关系
| 关系 | 记法 | 语义 | 示例 |
|---|---|---|---|
| 泛化 | 实线 + 空心三角 | is-a 继承 | VIP用户 泛化自 用户 |
| 实现 | 虚线 + 空心三角 | 实现接口 | 订单服务 实现 订单接口 |
| 关联 | 实线(可带方向) | 长期结构关系 | 订单 关联 客户 |
| 聚合 | 实线 + 空心菱形 | 整体-部分,部分可独立 | 车队 聚合 车辆 |
| 组合 | 实线 + 实心菱形 | 整体-部分,部分随整体生命周期 | 订单 组合 订单行 |
| 依赖 | 虚线 + 箭头 | 临时使用 | 结算服务 依赖 汇率服务 |
聚合与组合的菱形永远画在整体一侧;方向画错会让实现者误解生命周期责任。
类之间常见六种关系:泛化、实现、关联、聚合、组合、依赖;聚合与组合的区别在于部分能否脱离整体独立存在,菱形画在整体一侧。
| 关系 | 记法 | 语义 | 示例 |
|---|---|---|---|
| 泛化 | 实线 + 空心三角 | is-a 继承 | VIP用户 泛化自 用户 |
| 实现 | 虚线 + 空心三角 | 实现接口 | 订单服务 实现 订单接口 |
| 关联 | 实线(可带方向) | 长期结构关系 | 订单 关联 客户 |
| 聚合 | 实线 + 空心菱形 | 整体-部分,部分可独立 | 车队 聚合 车辆 |
| 组合 | 实线 + 实心菱形 | 整体-部分,部分随整体生命周期 | 订单 组合 订单行 |
| 依赖 | 虚线 + 箭头 | 临时使用 | 结算服务 依赖 汇率服务 |