设计模式必备知识——UML类图关系总结

前言

————————————————————————————————————————————————

在《大话设计模式》一书中,每一种设计模式都有它的组成类图,类图属于UML范畴,学好设计模式UML也同等重要,接下来让小编带领大家一起来回顾下UML类图中的各种关系吧


正文

————————————————————————————————————————————————

我们用书中的一幅图片举例对各种关系进行阐释。

设计模式必备知识——UML类图关系总结_第1张图片


首先,我们看图中"动物矩形框",它代表一个类,类图分为三层,第一层是类的名称,如果是抽象类,要用斜体显示。第二层是类的特性,通常为字段和属性。第三次是类的操作,通常是方法和行为。前面的符号"+"表示public,"-"表示private,"#"表示protected。


接口

接口图位于上图的左下角"飞翔",如图,它与类图的区别主要是顶端有《interface》显示。第一行是接口名称,第二行是接口方法。接口还有另一种表示方法,俗称棒棒糖表示法,比如图中的唐老鸭类就是实现了'讲人话'的接口。


继承关系

继承关系,如鸟类和动物类之间的关系,因为鸟属于动物。继承关系用空心三角形+实现来表示


实现接口关系

刚才我们讲的"飞翔"接口和大雁这个类之间就是实现接口关系,它是指类和接口之间的关系。实现接口用空心三角形+虚线来表示。


关联关系

我们再来看上图中"企鹅"和"气候"两个类,企鹅需要知道气候的变化,了解气候的规律,这种关系叫做关联关系。关联关系用实线箭头来表示。


聚合关系

单看“大雁”和“雁群”两个类,大雁是群居动物,每只大雁属于一个雁群,一个雁群又有多只大雁。所以他们满足聚合关系。聚合关系用空心的菱形+实线箭头来表示菱形指向整体


合成关系

又叫组合关系,相比聚合关系,更强烈紧密的体现了部分和整体之间的关系。例如图中"鸟类"和"翅膀"类。合成关系用实心的菱形+实线箭头来表示菱形指向整体


依赖关系

例如"氧气类"和"动物类",动物的生存需要氧气,氧气和动物之间为依赖关系,用虚线箭头来表示箭头指向被依赖者


尾声

小编之所以要用书中的例子做总结,是因为对于我来说,书中的例子更易理解和应用,还请所谓的“原创党”轻喷~

你可能感兴趣的:(------大话设计模式)