前言:这个UML图总是记不住,每当看到UML图总是去查找对应的箭头表示什么关系,今天终于忍不住了,一定要记住这个玩意。
泛化(继承)和实现:
继承你就叫继承呗,又起个什么名叫泛化,神经病吗?继承的东西总要有个被继承东西。所以本来就有,只是更加完善、强大了。使用实线表示。
实现,一个类的接口称之为实现。实现不用“实线”,实现用虚线表示。有意思。
组合和聚合:
使用菱形,为什么使用菱形?因为堆在一起了,很多,所以使用大一点的菱形。并且两者都是实线。
组合,可以认为发生了化学变化,产生了新的物质,分开后已经不是原来的样子。所以是“强依赖”关系,使用实心的菱形。
聚合,只发生物理变化,简单的聚集在一起,比如人聚集在一起成为团队,没有发生变化,解散后仍然存在,“若依赖关系”,使用空心的菱形。
依赖和关联:
依赖,一个A类依赖于另一个B类,说明两者不是平等的关系。被依赖的B类是作为参数传进去A类中的,比较虚,所以使用虚线箭头表示。
关联,两个类相互关联,说明两个类是平等的关系。A关联B,说明B作为属性存在A中。因为是平等的关系,所以使用实线的箭头。