Java中类与类之间的关系有六种:泛化,实现,依赖,关联,聚合,组合
- 泛化。
也称为继承。用于表示类与类之间、接口与接口之间的继承关系。通常用 extends 关键字实现。
UML中,使用带空心三角形的直线表示,由继承者指向被继承者。 实现。
用于表示类对接口的实现。
UML中,使用带空心三角形的虚线表示,由类指向接口。依赖。
是一种使用的关系,与关联不同,两者的联系程度比较低,依赖关系通常使用在方法中,可以是形参,也可以是方法中的局部变量。
UML中,使用带箭头的虚线表示,由依赖方指向被依赖方。- 关联。
是一种拥有的关系,两者的联系程度比依赖高,是在类中拥有被关联对象的引用或实例。
UML中,使用带箭头的实线表示,由关联方指向被关联方。 聚合。
是关联关系的一种特例,用于表示整体与部分的关系;又与组合不同,聚合关系中的部分与整体是可分的,部分可以脱离整体而存在,生命周期可以不同。
UML中,使用带空心菱形和箭头的实线表示,空心菱形指向整体,箭头指向部分。组合。
是关联关系的一种特例,用于表示整体与部分的关系,但是组合关系中的部分与整体不可分,具有相同的生命周期,一旦整体对象不存在,部分对象也将不存在,部分对象与整体对象之 间具有同生共死的关系。
UML中,使用带实心菱形和箭头的实现表示,空心菱形指向整体,箭头指向部分。