一、基本符号表示
UML组合关系使用实心菱形+实线箭头表示,其中:
- 实心菱形(◆)位于整体类一端
- 实线箭头指向部分类
- 符号格式:
[整体类]◆---->[部分类]
二、符号组成要素
-
菱形样式:
- 组合关系:实心菱形
- 对比聚合关系:空心菱形
-
线条类型:
- 必须使用实线(与依赖关系的虚线相区别)
-
箭头方向:
- 始终从整体指向部分
三、与其他关系的符号对比
关系类型 | 符号表示 | 关键区别特征 |
---|---|---|
组合 | 实心菱形+实线箭头 | 实心菱形,强所有权 |
聚合 | 空心菱形+实线箭头 | 空心菱形,弱所有权 |
关联 | 普通实线箭头 | 无菱形 |
依赖 | 虚线箭头 | 虚线 |
四、典型应用示例
-
图形表示:
[汽车]◆---->[发动机]
表示发动机是汽车的组成部分,汽车销毁时发动机也随之销毁
-
代码体现:
public class Car { private Engine engine; // 组合关系 // 当Car销毁时engine自动销毁 }
-
生命科学示例:
[人体]◆---->[心脏]
心脏不能脱离人体独立存在
五、设计注意事项
- 组合关系表示不可分离的整体-部分关系,部分对象不能独立于整体存在
- 在绘制时菱形必须与整体类接触,箭头必须指向部分类
- 与聚合关系的区别关键在于生命周期是否绑定