UML 类关系--聚合 组合 关联 依赖

经常用到的四种关系,容易搞混,记一下。

耦合度:逐渐增强

1. 依赖(Dependency)
   

    语义:类A要完成某个功能引用了类 B,则类 A 依赖类 B。
   类比:学生依赖电脑,用电脑完成工作
    表现形式:类A的
    某个成员函数的返回值、
    形参、
    局部变量
    或静态方法的调用了类 B,则表示类 A 依赖类 B。
2. 关联(Association)
  

    语义:类 A 的每个实例都需要类 B 的存在
    类比:学生和老师,一个学生必须要有老师
    表现形式:成员变量,即 B 成为 A 的成员变量
3. 聚合(Aggregation)
  

    语义:表示集体和个体的关系
    类比:大雁和雁群,一个雁群由多只大雁组成
    表现形式:成员变量,而且类 B 一般作为类 A 构造方法的形参
4. 组合(Composition)
  

    语义:和关联类似,表示的是个体和(个体的)部分的关系,比关联所表示的关系更紧密
    类比:大雁和大雁的翅膀。一个雁群里可以少一只大雁,但是一只大雁一个翅膀也不能少。
    表现形式:成员变量,而且类 B 一般在 类 A 中进行初始化,也就是说,类 B 无法独立存在,必须依赖于类 A。

原文地址:https://www.cnblogs.com/ainsliaea/p/11354614.html