以下类图由 StarUML 2 绘制
1. 泛化(Generalization)
在Java中体现为类的继承。
2. 实现(Realization)
在Java中体现为接口的实现。
3. 关联(Association)
在Java中通过实例变量实现关联关系。
4. 聚合(Aggregation)
聚合是一种特殊的关联关系。与关联关系的区别是:聚合的双方在逻辑上是不同层面的。
5. 组合(Composition)
组合又是一种特殊的关联关系。它与聚合相似,但是又有区别:组合的双方(整体与部分)关系特别强,整体与部分是不可分的,整体对部分的生命周期富有绝对的责任,整体结束了,部分也就随之结束。
关联、聚合、组合三者在代码上没有区别,只能通过逻辑意义来区别
6. 依赖(Dependency)
在Java中体现在方法上,一个类型变量作为了一个类的方法参数,即后者依赖前者。