- 统一建模语言(Unified Modeling Language, UML)是用来设计软件蓝图的可视化建模语言
- 在软件系统中,类与类之间存在各种关系,UML定义了类之间的六种关系,如下图所示
UML定义了类之间的六种关系 (解读)
- 依赖
- 一种使用关系,是临时关联。如:人与手机的关系,人使用手机。
- 在代码中表现为类的方法通过局部变量、函数参数或静态方法来调用另一个类(被依赖类)中的某些方法。
- 关联
- 用于表示一类对象与另一类对象之间的联系。如老师和学生、师傅和徒弟、丈夫和妻子等。
- 关联关系是类与类之间最常用的一种关系。
- 通常表现为在类中包含对象成员。
- 聚合
- 用于整体和部分之间的关系,是has-a关系。
- 部分可以脱离整体而独立存在。如雁群和大雁的关系,雁群包含大雁,大雁可以脱离雁群。
- 聚合关系也是通过在类中包含成员对象来体现。
- 组合
- 表示类之间的整体与部分的关系,但它比聚合更强烈,是contains-a关系。
- 部分不能脱离整体而独立存在。如鸡和鸡翅膀的关系,鸡翅膀无法脱离鸡而独立存在。
- 聚合关系也是通过在类中包含对象成员来体现。
- 泛化
- 表示父类与子类之间的关系,是一种继承关系,是is-a的关系。
- 如人和学生,学生是人。
- 实现
- 是接口类与实现类之间的关系。
- 在这种关系中,实现类实现了接口类,实现类中的方法实现了接口类中所声明的所有的抽象方法。
- 如汽车类实现了运输接口类