UML 关系图
words: 329 views: time: 1min在面向对象的设计中,类的关系涉及依赖、关联、聚合、组合和泛化这五种关系,耦合程度依次递增。
依赖 Dependency
依赖是五种关系中耦合最小的一种,类A为了完成某个功能而引用了类B,则称类A依赖类B。在代码中主要体现为类A的某个成员方法的返回值、形参、局部变量或静态方法的调用。
比如学生与电脑的关系:
关联 Association
关联关系比依赖要强,比如学生与老师的关系,学生可以不用电脑,但是学生不能没有老师。在代码中主要体现为类A的某个属性
聚合 Aggregation
聚合用来表示集体与个体之间的关系,比如班级与学生之间的关系,在代码中也是体现为类A的某个属性
组合 Composition
组合用来表示整体与组成部分之间的关系,比如学生与心脏之间的关系,不可缺失
泛化 Generalization
泛化指的是类与类之间的继承关系和类与接口之间的实现关系
- 继承关系
比如学生与人类的关系
- 实现关系
比如学生与某个动作之间的关系
参考: