一、类的表示
- 类名(上)、属性(中)、方法(下)
- 接口(上)需要在接口名上标注
"<<interface>>"
- 接口(上)需要在接口名上标注
- 属性的表示语法:
[可见性]属性名[:类型][=初始值]
- 类方法的表示语法:
[可见性]操作名[(参数表)][:返回类型]
- 参数表表示:”名称:类型”,多个参数用逗号隔开,可以有默认值
- 可见性:”-“表示private;”+”表示public;”#”表示protected
二、类间关系
2.1 泛化关系
- 表示“一般-具体”关系
- 高层次的类被称为基类或者超类,具有一般的公共信息
- 低层次的类被称为派生类或子类,公共信息继承自基类,具体信息可以自定义
如:
- 交通工具为基类,定义基本功能
- 汽车等具体交通工具为派生类,自定义其特性
泛化关系的表示:带三角形的实线箭头,箭头指向父类
2.2 关联关系
2.2.1 组合关系
- 表示“整体-部分”关系
- 部分==不能==离开整体而单独存在
- 如:教材 包含 封面、前言、目录等,他们之间是整体与部分的关系
- 组合关系的表示:实心菱形的实线表示,菱形指向整体
2.2.2 聚合关系
- 表示“整体-部分”关系
- 部分==可以==离开整体而存在
- 如:车 包含 轮胎、引擎等
- 车胎、引擎等可以不依赖车子而单独存在
- 聚合关系的表示:空心菱形的实线表示,菱形指向整体
2.2.3 一般关联关系
- 表示两个类的对象之间可以相互通讯,或者一个对象能够感知另一方
- 如:朋友关系
- 一般关联关系的表示:单向或双向,双向关联的箭头可加或不加,线段上的数字表示关联的数量和范围
2.3 依赖关系
- 表示元素A的变化会影响到元素B,或一个类的实现需要另一个类的协助
- 如:打电话需要手机
- 代码上表现为一个类的使用需要另一个类的对象作为参数
- 依赖关系的表示:带箭头的虚线,箭头指向被依赖方
2.4 实现关系
- 表示类实现接口的功能
- 实现关系的表示:带空心箭头的虚线,箭头指向接口