UML
统一建模语言(UML: Unified Modeling Language)
UML九种图:
(1)用例视图:用例图;
(2)设计视图:类图;对象图;
(3)进程视图:序列图;协作图;状态图;活动图;
(4)实现视图:构件图;
(5)拓扑视图:部署图;
类图关系及耦合程度
耦合程度(从最强到最弱):泛化=实现>组合>聚合>关联>依赖
(1)泛化(Generalization):父子类,is-a
标记符号:实线空角;
关系本质:继承关系;
关系描述:泛化关系是对象之间耦合度最大的关系,是父类与子类的继承关系,是is-a的关系。
(2)实现(Realization)
标记符号:虚线空角;
关系本质:接口实现;
关系描述:实现关系是接口与实现类之间的关系。
(3)组合(Composition):强关联,has-a
标记符号:实线实菱;
关系本质:必不可少;
关系描述:组合关系是关联关系的一种,也是表示整体和部分的关系,整体对象控制部分对象的生命周期,一旦整体对象不存在,部分对象也将不存在,部分对象不能脱离整体对象单独存在。
(4)聚合(Aggregation):强关联,has-a
标记符号:实线空菱;
关系本质:自己拥有;
关系描述:聚合关系是关联关系的一种,是整体和部分的关系,也是通过成员对象来实现,其中成员对象是整体对象的一部分,但是成员对象可以脱离整体对象单独存在。
(5)关联(Assciation):弱关联,has-a
标记符号:实线箭头;
关系本质:知道了解;
关系描述:用于表示一类对象与另一类对象之间的联系,使一个类知道另一个类的属性和行为;关联关系有单向关联、双向关联以及自关联。
(6)依赖(Dependency)
标记符号:虚线箭头;
关系本质:顺手牵羊;
关系描述:在代码中,某个类的方法通过局部变量,方法参数或者对静态方法的调用来访问另一个类(被依赖类)中的某些方法来完成一些任务;通俗地讲,一个类A使用到了另一个类B,但是这种使用关系是具有偶然性、临时性且非常弱的,但是B类的变化会影响到A,是一种使用关系。