【其他】UML类图分类

1. 继承(略)

2. 实现(略)

3. 依赖:

【关系】一个类Class_A使用到了另一个类Class_B,而这种使用关系是具有临时的、偶然的、较弱的。但是Class_B类的变化会影响到Class_A,只是影响地少一点。 它表现的是一种使用的关系,所以要尽量不使用双向的互相依赖。
【方向】虚线普通箭头,指向被使用者

  • 用代码表示:
class Class_A{
    void func(Class_B b){ ... }
}
  • 用链接中的UML类图表示:

4. 关联:

【关系】体现的是两个类之间的一种强依赖的拥有关系,比如Class_B是Class_A的成员变量
【方向】实线普通箭头,指向被拥有者

  • 用代码表示:
class Class_A{
    Class_B b;
}
  • 用链接中的UML类图表示:

5. 聚合:

  • 在代码层面,和关联是一致的。
  • has-a的关系,部分可以属于多个整体对象
    例如:Class_A 和 Class_B 都可以拥有Class_C。
  • 用代码表示:
class Class_A{
    Class_C c;
}

class Class_B{
    Class_C c;
}

6. 组合

  • 在代码层面,和关联是一致的。
  • contains-a的关系,但部分只能属于一个整体对象
    例如:Class_B 被 Class_A 拥有了后,不能再被其他类拥有。
posted @ 2020-09-07 09:03  JimmyZou  阅读(0)  评论(0编辑  收藏  举报  来源