1.)类成员属性与类函数访问修饰在UML是符号表示方法如下:

+ :表示访问修饰符-public

# :表示访问修饰符-protected

- :表示访问修饰符-private

2.)类的成员属性表示方式

android sutudio uml类图生成 安卓 uml_uml

3.)类函数表示方式

android sutudio uml类图生成 安卓 uml_类图_02

4.)类与类之间关系表示方式

4.1)单向关联

android sutudio uml类图生成 安卓 uml_类图_03

我们可以看到,在UML类图中单向关联用一个带箭头的直线表示。上图表示每个顾客都有一个地址,

这通过让Customer类持有一个类型为Address的成员变量来实现。

 4.2)双向关联

android sutudio uml类图生成 安卓 uml_类图_04

从上图中我们很容易看出,所谓的双向关联就是双方各自持有对方类型的成员变量。在UML类图中,

双向关联用一个不带箭头的直线来表示。上图中在Customer类中维护一个Product[]数组表示一个

顾客购买了哪些产品;在Product类中维护一个Customer类型的成员变量表示这个产品被那个顾客

所购买。

4.4)自关联

android sutudio uml类图生成 安卓 uml_UML_05

 

自关联在UML类图中用一个带有箭头且指向自身的直线表示。上图的意思就是Node类包含类型为

Node的成员变量,也就是“自己包含自己”。

4.5.)聚合关系(Aggregation)

表示的是整体和部分的关系,且 整体与部可以分开,表示 has-a 的关系。

在UML中,聚合关系用带空心菱形的直线表示:

android sutudio uml类图生成 安卓 uml_UML_06

4.6)组合关系(Composition)

组合关系与聚合关系间的最大不同在于:这里的“部分”脱离了“整体”便不复存在,表示 contains-a 的关系。

显然,嘴是头的一部分且不能脱离了头而单独存在。

在UML中,组合关系用带实心菱形的直线表示。

android sutudio uml类图生成 安卓 uml_uml_07

 4.7.)依赖关系

android sutudio uml类图生成 安卓 uml_UML_08

从上图中我们可以看到,Driver的drive方法只有传入了一个Car对象才能发挥作用,因此我们说Driver

类依赖于Car类。在UML类图中,依赖关系用一条带有箭头的虚线表示。

 

4.8.)继承关系

泛化关系在Java中也叫作继承关系,在UML中我们用带空心三角形的直线来表示,继承关系对应的是

extend关键字,在UML类图中用带空心三角形的直线表示,如下图所示中,Student类

与Teacher类继承了Person类。

android sutudio uml类图生成 安卓 uml_成员变量_09

 

4.9.)接口实现关系

这种关系对应implements关键字,比如下图中,Car类与Ship类都实现了Vehicle接口。

android sutudio uml类图生成 安卓 uml_UML_10