描述类与类之间基本关系的图
类的表示
类由三个部分组成:类名,属性,操作。
注:类名以大写字母开头。
属性和操作在类的范围内必须无二义。属性和操作是以小写字母开头,后续单词的首字母大写。
抽象类和抽象操作用斜体表示。
属性:范围 属性名称:类型 [多重性] = 默认值 {特性字符串}
操作:范围 操作名称(参数名称:类型):返回值 {特性字符串}
范围
公有(+):对能看到这个类的任何元素都可见。
保护(#):对这个类及其子类的其他元素可见。
私有(-):对这个类的其他元素可见。
包/默认(省略):对同一个包中的其他元素可见。
类关系
基本联系包括关联、泛化、聚合和组合。
关联
表示一个类知道另一个类的属性和方法,常表示一个类使用另一个类
表示方法:实线+箭头,箭头指向被使用的类
可以进一步通过多重性来修饰,表示使用者与被使用者的数量关系,在线上写上数字
n:n个
*:多个
0..*:0个或多个。
1..*:1个或多个。
0..1:0个或1个。
3..7:指定范围(3~7个,包含3和7)
泛化(继承)
泛化用带有封闭箭头的实线表示。箭头指向超类,关联的另一端是子类。
聚合
表示一种整体-部分的层次结构。
用带有一个空心菱形的实线表示。菱形所在的一端是聚合体(整体),另一端的类代表它的实例构成了聚合对象的部分。
当整体消失,部分不会消失。例如汽车与轮胎。
组合
组合是关联更强的聚合。
部分与整体共存亡。
组合用带有一个实心菱形的实线表示。菱形所在的一端是整体,另外一端是部分。