文章目录
- 表达关系的术语
- 关联
- 关联的语义表达(6点)
- 泛化
- 细化(也称为实现)
- 依赖
- 例题
- UML 基本关系的一般用法
- ① 模型化简单依赖
- ②模型化单继承
- ③模型化结构关系
- 例题
表达关系的术语
关联
定义:关联是类目之间的结构关系,描述了一组具有相同结构、相同语义的链。
链是对象之间的连接
关联的语义表达(6点)
- 关联名(name): 关联的标识,用于描述该关联的“涵义”。为了避 免该关联涵义上的歧义性,可给出其关联方向。
- 角色名 (role): 一个类参与一个关联的角色标识。在类的 一个关联中,可以显式地命名该角色
- 多重性(multiplicity):类中对象参与一个关联的数目,称为该关联角色的多重性。
- 聚合
一种特殊形式的关联,表达一种“整体/部分"关系。即一个类表示了一个大的事物,它是由一些小的事物(部分)组成的。
组合:
如果整体类的实例和部分类的实例具有相同的生命周期 这样的聚合称为组合。
组合是聚合的一种形式。
组合的末端,其多重性显然不能超过1;
在一个组合中,由一个链所连接的对象而构成的任何
元组,必须都属于同一个整体类的对象;
在一个组合中,其部分可以包含一些类和关联;根据需要,也可以把它们规约为关联类。
- 限定符
一个限定符是一个关联的属性或属性表,这些属性的值将对该关联相关的对象集做了一个划分。
- 关联类
一种模型元素,它有关联和类的特性。 一个关联类,可以被看作是一个关联,但还有类的特性;或被看作是一个类,但有关联的特性。
泛化
定义:
泛化是一般性事物(称为超类或父类)和它的较为特殊种类(称为子类)之间的一种关系,有时称为**"is-a-kind-of"关系。
①子类可继承父类的属性和操作**,并可有更多的属性和操作;
②子类可以替换父类的声明;
③若子类的一个操作的实现覆盖了父类同一个操作的实现,这种情况被成为多态性,但两个操作必须具有相同的名字和参数。
④一个类可以有0个、1个或多个父类。
细化(也称为实现)
定义: 细化是类目之间的一种语义关系,其中一个类目规约了保证另一个类目执行的契约。
在以下2个地方会使用细化关系:
●接口与实现它们的类和构件之间;
●用况与实现它们的协作之间。
依赖
定义: 依赖是一种使用关系,用于描述一个事物使用另一事物的信息和服务
①在大多数情况里,使用依赖来描述一个类使用另一个的操作;
②如果被使用的类发生变化,那么另一个类的操作也会受到影响;
③依赖可用于其它事物之间,例如注解之间和包之间。
例题
UML 基本关系的一般用法
① 模型化简单依赖
②模型化单继承
- 对于给定的一组类,发现2个或2个以上类的共同责任、属性和操作
- 把发现的共同责任、属性和操作放到一个一般类中(不要引入过多的层次)
- 画出从每个特殊类到一般类(父类)的泛化关系。
③模型化结构关系
- 标识关联
- 对于标识的每一个关联,添加语义描述
- 标识“整体/部分”