UML - jwyx/ForFun GitHub Wiki
Credit
http://www.ibm.com/developerworks/cn/rational/r-uml/
<<大话设计模式>>
Basic
类: 矩形框;分为三层
一层: 类的名称,如果是抽象类,则用斜体显式
二层: 类的特性,通常就是字段和属性
三层: 类的操作,通常就是方法或行为
+: public
-: private
#: protected
接口: 矩形图;
一层: <<interface>> 和 接口名称
二层: 接口方法
类之间 和 类与接口 的关系
继承: 空心三角形 + 实线;三角形指向父类
实现接口: 空心三角形 + 虚线;三角形指向接口
关联(association): 实线箭头;当一个类'知道'另一个类时
可以有基数
聚合(aggregation): 空心菱形 + 实线箭头;菱形指向群体,实线箭头指向个体
聚类表示一种弱的'拥有'关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分
可以有基数
E.g. 雁群 和 大雁
合成(composition): 实心菱形 + 实现箭头;菱形指向整体,实现箭头指向部分
合成表示一种强的'拥有'关系,体现了严格的部分和整体的关系,部分和整体的生命周期一样
合成关系的连线两端各有一个数字,称为基数,表示这一端的类可以有几个实例。
如果一个类可能有无数个实例,则可用'n'来表示。
E.g. 大雁 和 翅膀
依赖(Dependency): 虚线箭头;箭头指向被依赖对象
被依赖对象 一般作为 参数 或者 成员变量