UML六种关系图示(过目不忘版)

本文详细介绍了UML图中依赖、关联、聚合、组合、实现和继承六种关系的表示方法及其耦合度。依赖和关联通过箭头展示,菱形用于表示整体与部分的关系。耦合度从弱到强,虚线到实线,体现了关系的紧密程度。组合聚合关系同时使用菱形和箭头,而泛化关系仅用单向箭头。UML图的设计旨在以简洁方式清晰表述复杂关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述
图中,从左到右分别是依赖、关联、聚合、组合、实现、继承六种关系在UML图中的画法,有箭头,有菱形,有三角,他们为什么这么画呢,之间有什么联系呢,这要从全局来看。

首先,依赖关联关系和聚合组合关系的体现分别是剪头和菱形。依赖关联表示的是两个类之间的联系,而组合聚合表示的是整体和部分的关系。因此,菱形可以看作整体,菱形可以拆分成两个甚至更多的剪头形状,所以菱形指向的则是整体,而剪头指向的是部分。

上图从左到右的耦合度依次加强,在图形中的体现是,实线为强,虚线为弱。实现和虚线就好比纱布和绒布,纱布的空隙大,承受力弱,体现为弱,绒布空隙小,结实,体现为强。虚线有空隙,体现为弱,实线没有空隙,体现为强。同理,实心为强,空心为弱。

有一个重要的问题是,为什么组合聚合关系同时存在菱形和剪头,而泛化关系则没有剪头呢?我觉得起初是有的,可是从UML图的作用出发,就是要用更简洁的图形来更清晰的说明问题。某些图像元素省去也不影响大家对图的理解,那自然要省去了,这就是为什么单向关联有剪头,而双向关联不是两个剪头,而是取消剪头。聚合组合关系需要用菱形和剪头体现整体和部分,所以不得取消剪头。而泛化关系,父类只能有一个,子类可以有N个,所以唯一的箭头要指向共同的父类

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值