UML类图的各种关系(继承、实现、依赖、关联、组合、聚合)

关联关系【association】(企鹅知道气候)

关联关系是使用实例变量来实现的

class Penguin:Bird
{
 private Climate climate;
}

聚合关系【aggregation】(在大雁群类中有大雁数组对象)

在代码层面聚合与关联是一致的,只能从语义上来区分。

class WideGooseAggregate//大雁群类
{
private WideGoose[] arrayWideGoose;//大雁数组
}

组合(合成)关系【composition】(翅膀组合成鸟)

体现在代码层面与关联时一致的,只能从语义来区分

class Bird
{
private Wing wing;
public Bird()
{
wing=new Wing();
}
}

依赖关系【dependency】(动物的新陈代谢需要水和氧气)

依赖表现为:局部变量,方法中的参数和对静态方法的调用。

class Animal
{
public Metabolism(Oxygen oxygen,Water water)
{
//新城代谢代码
}
}

类和类之间的继承关系(鸟继承于动物)

类和接口间的实现关系(大雁实现了飞翔接口)

主要是关联关系的细化需要注意强弱,由若到强分别是 依赖 < 关联 < 聚合 < 组合

参考文章:https://www.cnblogs.com/jiyuqi/p/4571543.html

参考书籍:《大话设计模式》

猜你喜欢

转载自www.cnblogs.com/xuelixue/p/10690817.html