1.依赖关系(Dependence):

定义:一个类使用到了另一个类,且是临时的、很弱的使用。

理解:
  1. 依赖关系(Dependency) 是一种使用关系。
  2. 依赖关系体现在某个类的方法使用另一个类的对象作为参数。即只有方法被调用,另一个类对我才有用,方法不被调用,另一个类就无用,所以是临时的、很弱的。
    解释:
    1. class Driver{
    2. public void driveCar(Car car){
    3. car.move();
    4. }
    5. }
    1. class Car{
    2. public void move(){
    3. }
    4. }
    image.png

2.关联关系(Association):

定义:类和类之间比较强的、长期的 依赖 关系。

理解:
  1. 一个类的对象作为了另一个类的属性

3.泛化关系(generalization):

定义:类与类之间的继承关系。

解释:
  1. class WoodenDuck extends Duck{
  2. // ... ...
  3. }

image.png

4.实现关系(Implementation):

接口定义:接口是操作的集合,用于规定类的操作。

实现关系解释:
  1. interface Animals{
  2. public void quack(); //注意
  3. }
  1. class DuckGo implements Animals{
  2. @Override
  3. public void quack() {
  4. // ... ...
  5. }
  6. }

image.png

5.聚合关系(Aggregation):

定义:整体与部分的关系,且部分可以离开整体而单独存在。

理解:
  1. 一个汽车对象由一个发动机对象,四个轮胎对象组成。没有轮胎等,汽车还能存在。
  2. 部分类 是通过作为 整体类 中实例变量来实现这样关系的。
  3. 部分类 由外界传入 整体类,所以部分类 的存亡和 整体类 无关。

解释:

  1. class Bus{
  2. tyre[] tyres;
  3. engine engine;
  4. }
  1. class tyre{} //轮胎
  1. class engine{}

image.png

6.组合关系(合成关系)(Composition):

定义:整体与部分的关系,部分 不可以 离开整体而单独存在。

理解:
  1. 一个大脑对象由一个左脑对象和右脑对象组成。大脑被创建时,左、右脑被创建;大脑被销毁时,左、右脑被销毁。
  2. 部分类 是通过作为 整体类 中实例变量来实现这样关系的。
  3. 部分类 在 整体类 被创建,所以部分类 的存亡和 整体类 息息相关。
  4. image.png

    本文来源于来源于:https://blog.csdn.net/lwwl12/article/details/82463441