类和类的关系
1、关联
(1)单向关联
单向关联用一单向箭头表示,图上表示每个客户有一个地址
(2)双向关联
双向关联表示双方各自持有对方类型的成员变量。双向关联用一个不带箭头的直线表示。
上图中在Customer类中维护一个Product[]数组,表示一个顾客购买了那些产品;在Product类中维护一个Customer类型的成员变量表示这个产品被哪个顾客所购买。
(3)自关联
自关联在UML类图中用一个带有箭头且指向自身的直线表示。上图的意思就是Node类包含类型为Node的成员变量,也就是“自己包含自己”。
2、聚合关系
聚合关系和一条空心菱形和箭头直线表示,强调整合和部分的包含关系,但是“部分”可以脱离“整体”存在。
比如上图中汽车包含了发动机,而发动机脱离了汽车也能单独存在。
3、组合关系
组合关系与聚合关系见得最大不同在于:“部分”脱离了“整体”就不能存在了。
4、依赖关系
依赖关系用一条带箭头的虚线直线表示。Driver的drive方法只有传入了一个Car对象才能发挥作用,因此我们说Driver类依赖于Car类。
5、继承关系
关键字用extend,用带空心箭头的直线表示。
6、接口实现关系