UML之关系
- 关联
- 聚合
- 组合
- 依赖
- 泛化
- 实现
1、关联(Association)
【关联关系】:是一种拥有的关系,它使一个类知道另一个类的属性和方法。
关联分为双向关联、单向关联、自身关联
1.1双向关联:指双方都知道对方的存在,都可以调用对方的公共属性和方法。
【箭头指向】用不带箭头的实线连接双方
1.2单向关联:表示单向的认识,A知道B,A也可以调用B的公共属性和方法。而B不知道A,一般表示为一种引用。
【箭头指向】带三角箭头的实线,箭头指向父类。
1.3自关联:自关联: 在系统中可能会存在一些类的属性对象类型为该类本身,这种特殊的关联关系称为自关联。
2、 聚合(Aggregation)
【聚合关系】是整体和部分的关系,部分可以离开整体而单独存在。例如:车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在
【箭头指向】带空心菱形的实心线,菱形指向整体
3、组合(Composition)
【组合关系】是整体和部分的关系,但部分不能离开整体而单独存在。例如:公司和部门是整体和部分的关系,没有公司根本不存在部门。
【箭头指向】带实心菱形的实线,菱形指向整体
4、依赖(Dependency)
【依赖关系】是一种使用关系。一个类的实现需要另一个类的协助。
【箭头指向】带三角箭头的实线,箭头指向父类。
5、泛化(Generalizetion)
【泛化关系】一种继承关系。例如:小狗是动物的一种,它既有小狗的特性也有动物的特性。
【箭头指向】带三角箭头的实线,箭头指向父类。
6、实现(Realizetion)
【实现关系】是一种类与接口的关系,表示类是接口所有特征和行为的实现。
【箭头指向】带三角箭头的虚线,箭头指向接口。
各种关系的强弱顺序:
泛化=实现>组合>聚合>关联>依赖