UML类图——类之间的关系

2023-06-25,,

关联关系(实线箭头)

是一种结构化关系,表示一类对象与另一类对象之间有联系。Java,c++,c#等编程语言在实现关联关系时,通常将一个类的对象作为另一个类的属性

- 双向关联
- 单向关联
- 自关联
- 多重性关联

聚合关系(带空心菱形的实线箭头)

表示一个整体与部分之间的关系,在聚合关系中成员类是整体类的一部分,即成员对象是整体对象的一部分,但是成员对象可以脱离整体对象独立存在

public class Car{
private Engine engine;
public Car (Engine engine){
this.engine = engine;
}
public void setEngine(Engine engine){
this.engine = engine;
}
}
public class Engine{
......
}

Engine是Car的一部分,但是Engine可以脱离Car单独存在,在Car中不直接实例化Engine,而是通过构造方法或者setter方法将在类外部实例化好的Engine对象以参数的形式传入到Car中,这种传入方法叫注入(Injection),Car和Engine实例化时刻不同,因此他们之间不存在生命周期的制约关系。

组合关系(带实心菱形的实线箭头)

表示整体与部分之间的关系,但是整体与部分是共同生死的关系.

public class Head{
private Mouth mouth;
public Head(){
mouth = new Mouth();
}
}
public class Mouth{
.......
}

head中直接创建了mouth对象,同生共死,拥有相同的生命周期

依赖关系(虚线箭头)

是一种使用关系,在需要表示一个事物使用另一种事物时使用依赖关系。依赖关系体现在某个类的方法使用另一个类的对象作为参数,又依赖的一方指向被依赖的一方。

public class Driver{
public void drive(Car car){
car.move();
}
}
public class Car{
public void move(){
......
}
}

泛化关系(带空心三角的实线箭头)继承关系

接口与实现关系(带空心三角的虚线箭头)

UML类图——类之间的关系的相关教程结束。

《UML类图——类之间的关系.doc》

下载本文的Word格式文档,以方便收藏与打印。