UML类图中对象之间的几种关系
UML类图中对象之间的几种关系
对象之间的关系有:泛化(继承)、实现、依赖、关联、聚合、组合
下面我们来一一说明。
1. 泛化
表示类之间的一种继承关系,父类是子类的泛化,例如对老虎可以泛化为动物。
A继承了B,则A是B的一种,也可以说B是A的泛化。
2. 实现
泛化是针对类来说的,它是类之间的关系,而实现时针对接口来说的。类可以实现一个接口,用下面的符号来表示实现关系。
3. 依赖
一般而言,依赖关系在Java语言中体现为局域变量、方法的形参、方法返回值,或者对静态方法的调用。A依赖于B,如果没有B,A就不能正常工作。
比如特斯拉汽车依赖于电能,如果没有电池,它将无法工作。
4. 关联
关联关系是类之间同层次的关系,比如学生和老师是同层次的,一个老师和几十个学生有关联,这是一对多的关联关系,此外还有一对一、多对多、多对一等。依赖关系一般体现为成员变量等。
上面是多对一的关系,多名同学同时与一位老师有关联。
5. 聚合
聚合关系是一种不同层次的类之间的关系,比如汽车是由发动机、电能、轮胎、车架等聚合而成,汽车和发动机、电池等属于不同层次的东西。是一种部分和整体的关系。
6. 组合
组合关系是一种强聚合关系,整体和部分必须同时存在,整体和部分的生命周期相同。