vlambda博客
学习文章列表

三分钟学设计模式 -- UML图

(1)依赖关系(用虚箭线表示)

所谓依赖关系,就是构造这个类的时候,需要依赖其他的类,比如:动物依赖水和氧气。

(2)继承、泛化关系(用带空心三角形的实线表示)

继承(泛化)关系,它指定了子类如何特化父类的所有特征和行为。例如:鸟是动物的一种,企鹅、鸭、大雁是鸟的一种。

(3)实线关系(用带空心三角形的虚线表示)

一种类与接口的关系,表示类是接口所有特征和行为的实现。它有两种表示方法:

第一种,矩形表示法,

  • 顶端有<<interface>>

  • 第一行:接口名称

  • 第二行:接口方法

第二种,棒棒糖表示法

  • 圆圈旁为接口名称

  • 接口方法在实现类中出现

(4)关联关系(用实箭线表示)

所谓关联关系,就是这个类有一个属性是其他类。

(5)聚合关系(用带空心菱形的实线表示)

聚合关系是关联关系的一种,是强的关联关系 ;

特点:部分对象的生命周期并不由整体对象来管理。也就是说,当整体对象已经不存在的时候,部分的对象还是可能继续存在的。比如:一只大雁脱离了雁群,依然是可以继续存活的。

(6)组合关系(用带实心菱形的实线表示)

组合关系同样是关联关系的一种,是比聚合关系还要强的关系。

特点:在组合中,部分与整体生命期一致,部分与组合同时创建并同时消亡 。比如:鸟与翅膀的关系。