在UML(统一建模语言)中,不同的关系类型使用不同的箭头和线条来表示。以下是常见的UML关系及其对应的表示方法:
1. 继承(Inheritance)
-
表示:空心三角形箭头 + 实线
-
方向:箭头指向父类(基类)
-
说明:表示一个类继承自另一个类。
-
示例:
复制[子类] ——▷ [父类]
2. 实现(Realization)
-
表示:空心三角形箭头 + 虚线
-
方向:箭头指向接口或抽象类
-
说明:表示一个类实现了一个接口或抽象类。
-
示例:
复制[实现类] - - -▷ [接口]
3. 依赖(Dependency)
-
表示:普通箭头 + 虚线
-
方向:箭头指向被依赖的类
-
说明:表示一个类依赖于另一个类(例如,作为方法参数、局部变量等)。
-
示例:
复制[依赖类] - - - > [被依赖类]
4. 关联(Association)
-
表示:普通箭头 + 实线
-
方向:箭头指向被关联的类(可选,表示导航方向)
-
说明:表示两个类之间有某种联系,通常是成员变量级别的关联。
-
示例:
-
-
复制[类A] ——> [类B]
5. 聚合(Aggregation)
-
表示:空心菱形 + 实线
-
方向:菱形指向整体,箭头指向部分
-
说明:表示一种“弱拥有”关系,部分可以独立于整体存在。
-
示例:
复制[整体] ◇——> [部分]
6. 组合(Composition)
-
表示:实心菱形 + 实线
-
方向:菱形指向整体,箭头指向部分
-
说明:表示一种“强拥有”关系,部分不能独立于整体存在。
-
示例:
复制[整体] ◆——> [部分]
-
总结对比表
关系类型 箭头/线条样式 方向 示例 继承 空心三角形 + 实线 子类 → 父类 [子类] ——▷ [父类]
实现 空心三角形 + 虚线 实现类 → 接口 [实现类] - - -▷ [接口]
依赖 普通箭头 + 虚线 依赖类 → 被依赖类 [依赖类] - - - > [被依赖类]
关联 普通箭头 + 实线 类A → 类B [类A] ——> [类B]
聚合 空心菱形 + 实线 整体 → 部分 [整体] ◇——> [部分]
组合 实心菱形 + 实线 整体 → 部分 [整体] ◆——> [部分]
注意事项
-
箭头方向:箭头方向表示关系的方向,通常指向被依赖、被继承或被关联的类。
-
多重性:在关联、聚合和组合中,可以在线条两端标注多重性(如
1
,0..1
,*
等)。 -
命名:可以为关系命名,以更清晰地描述关系的含义。
通过正确使用这些符号,可以清晰地表达类之间的关系,使UML图更易读和易懂。
-