UML 关联 vs 聚合 vs 组合2025年3月17日 | 阅读 3 分钟 在 UML 图中,关系用于连接多个事物。 它是结构、行为或分组事物之间的连接。 以下是标准 UML 关系的列表。
关联 (Association)关联关系是一种结构关系,其中不同的对象在系统内连接。 它展示了代表活动的对象之间的二元关系。 它描述了对象之间的关系,例如,一个老师可以与多个学生关联。 它由类之间的一条直线表示,后面跟着一个箭头指示方向,当箭头位于两侧时,则称为双向关联。 我们可以通过在线条上添加修饰符来指定关联的多重性,这些修饰符将表示关联。 示例 1) 一个老师可以有多个学生。 ![]() 2) 一个学生可以与多个老师关联。 ![]() 组合和聚合是关联的两个子集。 在这两种情况下,一个类的对象由另一个类的对象拥有; 唯一的区别在于,在组合中,子类不独立于其父类而存在,而在聚合中,子类不依赖于其父类,即可独立存在。 聚合是关联的一种特殊形式,组合是聚合的一种特殊形式。 ![]() 聚合 (Aggregation)聚合是关联的子集,是不同事物的集合。 它表示“有一个”关系。 它比关联更具体。 它描述了部分-整体或部分-的关系。 这是一个二元关联,即它只涉及两个类。 这是一种子类独立于其父类的关系。 例如 在这里,我们考虑一个汽车和轮子的例子。 没有轮子,汽车无法行驶。 但是轮子可以独立地用于自行车、踏板车、自行车或任何其他车辆。 轮子对象可以存在而无需汽车对象,这证明了聚合关系。 ![]() 组合 (Composition)组合是聚合的一部分,它描绘了整体-部分的关系。 它描述了复合(父)及其部分(子)之间的依赖关系,这意味着如果复合被销毁,它的部分也将被删除。 它存在于相似的对象之间。 正如您从下面给出的例子中看到的那样,组合关联关系将 Person 类与 Brain 类、Heart 类和 Legs 类连接起来。 如果人被销毁,大脑、心脏和腿也将被删除。 ![]() 关联 vs. 聚合 vs. 组合
下一主题UML 关联 |
我们请求您订阅我们的新闻通讯以获取最新更新。