一、说明
- 1.UML(Unified Modeling Language,统一建模语言)中的关联关系是用来描述两个或多个类(或实体)之间语义上的相互关系的。
- 2.这种关系表示了一个类的对象能够知道另一个类的对象的属性和方法。
- 3.在UML图中,关联关系通常通过实线来表示,并且可以标注关系的名称和多重性(multiplicity)。
二、具体类型
2.1 普通关联
- 1.基本的关联关系,表示两个类之间存在某种联系,但不限于特定的类型(如聚合或组合)。
- 2.表示方式:用实线表示,可以标注关系的名称和多重性。
2.2 单向关联
- 1.表示一个类的对象可以访问另一个类的对象,但反向不行。
- 2.表示方式:在UML图中,单向关联用一个带箭头的实线表示,箭头指向被关联的对象。
2.3 双向关联
- 1.表示两个类的对象都可以访问对方。
- 2.表示方式:在UML图中,双向关联关系可以用带双箭头的实线表示,或者通过两条单向关联线分别表示两个方向的关联。
- 3.更常见的做法是使用不带箭头的实线表示,并在关联线上标注双方的多重性。
2.4 自关联
- 1.一个类的对象与自身类的对象有关联。
- 2.表示方式:在UML图中,自关联用一条从类到自身的带箭头实线表示。
2.4 聚合关系(Aggregation)
- 1.聚合是关联关系的一种特殊形式,表示整体与部分的关系,但整体与部分之间可以分离,部分可以属于多个整体。
- 2.表示方式:在UML图中,聚合关系用空心菱形加实线箭头表示,空心菱形在整体一方,箭头指向部分一方。
2.5 组合关系(Composition)
- 1.组合也是关联关系的一种特殊形式,表示更强的整体与部分的关系。在组合关系中,部分完全隶属于整体,整体不存在了部分也会随之消失。
- 2.表示方式:在UML图中,组合关系用实心菱形加实线箭头表示,实心菱形在整体一方,箭头指向部分一方。
三、关联关系中的多重性
- 1.多重性表示了一个类的对象可以与多少个另一个类的对象相关联。它可以是一个具体的数字(如1或2),也可以是一个范围(如0…表示零个或多个),或者是特定的符号(如表示零个或多个,+表示一个或多个)。