每次在阅读或者画UML 图的时候,总是对各种类之间的关系区分的不是很清楚,最近在看《大话设计模式》,开篇的介绍非常详细易懂,赶紧整理一下,便于自己记忆。
1. 继承关系
继承关系表示一个类派生自另外一个类,用来实现多态。使用实线的空心三角形表示。下图所示表示 Bird 类 继承 Animal 类。
2. 接口实现
接口实现类似于继承,使用虚线的空心三角形箭头表示
3.关联
当一个类“知道”另外一个类时,使用关联(association),在类的定义中表现形式为一个类是另外一个类的成员变量。关联和合成(组合)有细微的区别,下图所示的代码中,成员变量 climate 并没有在构造函数中创建实例,也就是说 climate 的生命周期要小于 Bird 的生命周期,climate并不是严格的不可分割的部分。