类间的关系
1、泛化关系(Generalization):表示类与类之间的继承关系,接口接与接口间的继承关系或者类对接口的实现关系。
2、关联关系(Association):类与类之间的联接,它使一个类知道另一个类的属性和方向。关联可以是双向的也可以是单向的。一个的关联关系可以进一步确认为聚合关系或者合成关系。
3、聚合关系(Aggregation):是关联关系的一种,是强的关联关系。聚合是整体与个体之间的关系。如汽车类与引挚类,轮胎类之间的关系就是整体与个体的关系。
与关联关系一样,聚合关系也是通过实例变量来实现的。
***关联关系所涉及的两个类是处于同一层次上的,而在聚合关系中,两个类处在不平等的层次上的,一个代表整体,一个代表部分。(关联与聚合仅仅从语法上是区分不开的,需要察所涉及的类之间的逻辑关系。)
4、合成关系(Composition):是关联关系的一种,是比聚合关系强的关系。它要求普通的聚合关系中代表的对象负责代表部分的对象的生命周期,合成关系是不能共享的。
代表整体的对象需要负责保持对象的存活,在一些情况下负责将代表部分的对象湮灭掉。代表整体的对象可以将代表部分的对象传递给另一个对象,由后者负责此对象的生命周期。换言之,
*******代表部分的对象在每一个时刻只能与一个对象发生合成关系,由后者排它的负责其生命周期。
5、依赖关系(Dependency):是类与类之间的连接,依赖总是单向的。依赖关系代表一个类依赖于另一个类的定义。
*********一般而言,依赖关系在Java语言中体现为局部变量,以及一个方法的参数。