UML类之间的六大关系总结

2016-08-02 craneyuan 更多博文 » 博客 » GitHub »

uml

原文链接 https://crane-yuan.github.io/2016/08/02/The-relationship-of-uml-class/
注:以下为加速网络访问所做的原文缓存,经过重新格式化,可能存在格式方面的问题,或偶有遗漏信息,请以原文为准。


在UML类图中,常见的有以下几种关系:

  • 泛化(Generalization)
  • 实现(Realization)
  • 关联(Association)
  • 聚合(Aggregation)
  • 组合(Composition)
  • 依赖(Dependency)

各种关系的强弱顺序:

泛化= 实现> 组合> 聚合> 关联> 依赖

<!--more-->

泛化(Generalization):

类之间的继承关系用泛化。

【箭头指向】:带三角箭头的实线,箭头指向父类

泛化

实现(Realization)

类实现接口的关系使用实现。

【箭头指向】:带三角箭头的虚线,箭头指向接口

Realization

关联(Association)

类之间的拥有关系用关联。

【箭头及指向】:带普通箭头的实心线,指向被拥有者

Association

聚合(Aggregation)

聚合是一种弱的整体与部分的关系,整体可以脱离部分而单独存在。

【箭头及指向】:带空心菱形的实心线,菱形指向整体

Aggregation

组合(Composition)

组合是一种强的整体与部分的关系,整体不可脱离部分而存在。

【箭头及指向】:带实心菱形的实线,菱形指向整体

Composition

依赖(Dependency)

依赖是一种使用的关系。

【箭头及指向】:带箭头的虚线,指向被使用者

Dependency

总结

一个完整的uml类图。

完整uml图