弯路
之前学设计模式的时候看到设计模式涉及uml相关的东西,就跑去买了uml的书想先搞懂uml,结果在折腾一段时间后发现似乎没有这个必要,要学习设计模式在uml方面知道类图就可以了。
如果是从事设计岗或者要做设计方面的工作,具体就是搞系统或模块建模,懂uml肯定是必须的,但那已经是高级工程师或架构师阶段了,对于初级的开发实现工程师确实没有太大必要,能看明白给到的uml图就行。
重点
- 理解和记忆类图
- 记忆类的表示方法
- 理解和记忆类与类之间关系的概念
- 记住类图中关系的表示法
类图概述
类图强调模型中存在的类、类的内部结构,以及类之间的关系。
类图是系统分析设计阶段的重要产物,是系统编码和测试的重要模型。
类的表示方法
类图中类的组成部分:类名,属性,方法
属性的完整表示方式是: 可见性 名称 :类型 [ = 缺省值]
方法的完整表示方式是: 可见性 名称(参数列表) [ : 返回类型]
UML类图中表示可见性的符号有三种:
+:表示public
-:表示private
#:表示protected
依赖关系
依赖关系指 在某个类的方法中 通过 局部变量/方法参数/静态方法调用 来访问另一个类 的关系。
依赖关系是一种使用关系,是耦合度最弱的关系,是临时性的关联。
依赖关系的表示方法是 虚线箭头。
关联关系
关联关系指 一个类是另一个类的成员这种关系。
关联关系的表示方法是 实线箭头。
单向关联
单向关联就是一个类在成员变量处引用另一个类。
双向关联
双向关联就是两个类在成员变量处相互引用。
自关联
自关联就是类在成员变量处自己引用自己。
聚合关系
聚合关系是关联关系的一种,是整体和部分之间的关系。
在概念上,整体和成员是可以分开独立存在的。
在内存中,整体对象和成员对象可以独立存在具有不同的存活时间,两者不需要同生共死。
聚合关系的表示方法是 空心菱形。
组合关系
聚合关系是关联关系的一种,是更强烈的整体与部分之间的关系。
在概念上,整体和成员就是在某种意义上不可分离的存在,比如头和嘴,文章和标题。
在内存种,整体对象和成员对象具有相同的存活时间,是同生共死的关系。在创建整体对象时也要创建出部分对象,整体对象回收时也要回收部分对象。
组合关系的表示方法是 实心菱形。
实现关系
实现关系是接口与实现类之间的关系。
实现关系的表示方法是 虚线三角箭头
继承关系(泛化关系)
继承关系表示父类与子类之间的关系,是耦合度最大的一种关系。
继承关系的表示方法是实现三角箭头。