其他的类关系

  • 聚合关系
  • 组合关系
  • 依赖关系
  • 继承/实现关系

关联关系还可以细分为聚合和组合

聚合关系

表示两个对象之间的所属关系,所有者对象成为聚合对象,它的类成为聚合类,从属对象称为被聚合对象,类称为被聚合类。
是整体与部分的关系,且部分可以离开整体而单独存在。如车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在。
【代码体现】:成员变量
**对象的关系进阶 - 图1

  1. public class Company {
  2. private List<Employee> employees;
  3. }
  4. public class Employee {
  5. private String name;
  6. }

组合关系

聚合是一种较弱的对象包含关系,较强的是组合,在组合关系中包含对象负责被包含对象的创建以及生命周期,即当包含对象被销毁,被包含对象也会不复存在。整体与部分的关系,但部分不能离开整体而单独存在。如公司和部门是整体和部分的关系,没有公司就不存在部门。
【代码体现】:成员变量
对象的关系进阶 - 图2

  1. public class Car {
  2. // 实例化一个不可变的属性 engine
  3. private final Engine engine = new Engine();
  4. }
  5. public class Engine {
  6. private String type;
  7. }

依赖关系

依赖描述的是一个类的引用用作另一个类的方法参数
对象的关系进阶 - 图3
上述 login 方法返回类型是 User

继承/实现关系

对象的关系进阶 - 图4