类之间的关系

1、依赖

依赖指的是类之间的调用关系,一个类调用了宁一个类的服务(方法)。

 如果类A在它的方法中调用另一个类B的方法或属性,则类A依赖类B。

   用带箭头的虚线表示依赖:

  

  Public class Person

{

  public void buy(Car car)

  {.....}

  public void buy(House house)

  {.....}_

}

2、关联

关联指的是类之间的特定对应关系,在面向对象程序语言角度,关联代表一个类拥有的某个属性对应着另一个类。

描述关联关系的三个维度特性:方向性、多重性、聚集性。

方向性:代表一个类是否拥有能够导航到另一个类的知识,即意味着其有一个状态来保持到对方的引用。可以分为单向关联和双向关联。

多重性-关联可能是多重的:

一对一关联:如一个家教只给一个学生上课

一对多关联:如果一个博导可以带多个研究生,而一个研究生只有一个导师,则导师和学生之间是一对多关联。

多对多关联:一个学生需要修多门课程,每门课程都会有很多学生来上课。

聚集性:据集是一种特殊的关联关系,特指对象之间存在一种”整体与部分“的包含关系。聚具

  聚集性具体可以分为两种类型

  • 聚合(Aggregate): 普通聚集关系,被聚集的类或子系统允许被拆卸和替换。
  • 组合(Composite): 强聚集关系,被聚集的类或子系统不能被拆卸和替换。

 例如台式主机之间的组成关系:

  

原文地址:https://www.cnblogs.com/leo1111/p/12491540.html