当前位置: 首页>编程语言>正文

UML类图中的关系

UML中类图之间的关系有六种,依次(关系强弱)为实现(Realization)、泛化(Generalization)、组合(Composition)、聚合(Aggregation)、关联(Association)、依赖(Dependency)。

1、实现(Realization)

    【描述】类与接口的实现关系。类实现了接口的所有属性和行为。

    【样式】

UML类图中的关系,第1张
继承标识形式

2、泛化(Generalization)

    【描述】是一种继承关系,一般是子类实现了父类所有的属性和行为。例如喜鹊继承了鸟类(喜鹊可以泛化为鸟类)

    【样式】

UML类图中的关系,第2张
泛化标识形式

3、组合(Compsition)

    【描述】一个类由其它类组合而成,是一种部分和整体的关系,但是部分不能脱离于整体而存在。例如鸟类由翅膀类组合而成(还有别的部分),但是翅膀不能单独于鸟类存在。

    【代码方式】成员变量

    【样式】

UML类图中的关系,第3张
组合表示形式

4、聚合(Aggregation)

    【描述】一个类由其它类聚合而成,是一种整体和部分的关系,但是部分可以脱离整体而存在。例如汽车由轮胎组成(还有比的部分),脱离汽车轮胎还是可以存在的。

    【代码形式】成员变量

    【样式】

UML类图中的关系,第4张
聚合表示样式

5、关联(Association)

    【描述】是一种类与类之间的连接关系。一个类知道另外一个类的属性和方法,是一种强依赖关系。单向箭头,双向箭头(无箭头)。箭头端点有数字,意思如下:

    0..1 表示可以有0个或者1个实例

    0..* 表示对实例的数目没有限制

    1     表示只能有一个实例

    1..* 表示至少有一个实例

    【代码形式】类A中的属性是类B,或者类A引用了类B的全局变量

    【样式】

UML类图中的关系,第5张
关联表示形式

6、依赖(Dependency)

    【描述】是一种协作的关系,也表示类与类之间的连接,表示一个类依赖于另一个类的定义。是一种临时的,脆弱的关系。比如人与船的关系,过河之后关系就解除了。

    【代码体现】A类中在局部变量,方法入参,静态方法调用中引用B类,用完之后释放,非强关联

    【表示样式】

UML类图中的关系,第6张
依赖表示样式

如上是自己的总结。

参考文档如下,感谢原文作者分享:

https://blog.csdn.net/qq_35495763/article/details/80764914

https://www.cnblogs.com/itplay/p/10671715.html


https://www.xamrdz.com/lan/5xj2016437.html

相关文章: