UML介绍(学设计模式就要先看懂UML)
参考UML简介 图片里面有现成的,我就拿来用了,嘻嘻
UML主要包括什么
其中,案例图、类图和序列图是最有用的。,下面主要介绍这三个,其他的可以百度
1、用一个图来介绍UML的类图,把它切割成几部分来介绍,理解
(1) 类class的解释
看下面这张图
如果单独拿出来,它就是一个class类,分成了三层,分别为类名,成员变量,方法名
第二层和第三层中的 + 号代表着修饰符时public ,而 - 代表修饰符时priivate,# 代表的是不写修饰符的那种,默认包内可见
如果把这个图从大图中看,上面这个图中的class可以说是一个基类
(2) 接口
看下面这个图
用的是虚线和空心三角指向了实现的接口
这种方式不赞成在接口中定义成员属性
补充:接口还有另外一种表示方法,在PowerDesigner中的接口是在名称区加一个带横杠的三角,如下:
(3) 继承
空心三角和实线指向了需要继承的基类
(4) 关联
当一个类知道另一个类时就需要用关联(association)
关联用实线加箭头指向需要关联的类
(5) 聚合
聚合是一种弱的"拥有关系",体现的是A可以包含B,但B不是A对象的一部分
是不是有点难懂?看下面的图例
这个雁群 方法只有两个,但是可以添加上大雁的所有方法,就成了A可以包含B,但是大雁不可能添加上雁群的方法,就是这种关系,我可以有你的全部,但是你不能有我的一部分
空心的菱形和实线箭头,箭头指向可以包含的对象,而菱形指向另一方,代表A可以到B,但是B不能到A
(6) 组合(合成)
这种就是强的拥护关系,不能缺少
用实心的菱形和实线箭头 来表示,不可能鸟没有翅膀吧?(当然你说截肢,我甘拜下风)
(7) 依赖
依赖关系可以看成是方法的参数,要想实现新陈代谢你就需要这俩个参数,
用虚线加箭头 表示
2 案例图
为什么在后面说这个而不是按顺序呢?因为这个很简单,可以想象你学的if,for,while等画的图,
看下面这张图你就知道了
就不解释了
3、序列图
这个也好理解,看下面这张图,百度的,序列就是顺序