图解UML类图
平时阅读源码类书籍或说明程序结构时难免和UML类图打交道,下面结合图片对UML类图做简要说明。
1.类的UML表示方式
图1:类的UML图示
第一部分是类名:Employee
第二部分是类的成员变量:name、age、email
第三部分是成员函数:modifyinfo()
UML规定的成员变量表示为:可见性 名称:类型 [ = 缺省值 ]
UML规定的成员函数表示为:见性 名称(参数列表) [ : 返回类型]
图1中:-表示private,+表示public,其实还有#表示protected。name等表示变量名,name最后的String表示变量类型。modifyinfo()表示函数名,没有参数,void表示没有返回值
2.类之间关系
2.1关联关系
A.单向关联
单向关联用实线单箭头表示,这边表示Customer类拥有Address
图2:单向关联
B.双向关联
双向关联用实线双箭头表示,这边表示Customer和Product相互拥有
图3:双向关联
C.自关联
自关联用实线箭头指向自己表示,这边表示Node里还拥有Node
图4:自关联
2.2聚合关系
聚合关系表示整体与部分的关系,使用空心菱形实线再加箭头表示
图5:聚合关系
2.3组合关系
组合关系也表示类之间整体和部分的关系,使用实心(记忆:脱离不了,必须实在点)菱形实线再加箭头表示,它跟聚合关系的不同是:聚合关系部分可以脱离整体,组合关系部分不可以脱离整体即聚合关系部分和整体的生命周期可以不一样,组合关系则是保持一致的。
图6:组合关系
2.4依赖关系
依赖关系是一种使用关系,使用虚线箭头表示
图7:依赖关系
2.5继承关系
继承关系使用空心三角形和实线表示,java里用extends表示
图8:继承关系
2.6实现关系
实现关系使用空心三角形和虚线表示,java里用implements表示
图9:实现关系