UML简介
UML(统一建模语言,Unified Modeling Language)是一种图例式软件设计语言,它综合了很多已经存在的面向对象的建模语言、方法和过程。UML语言对于一个软件系统而言具有:可视化功能、说明功能、建造功能和建立文档的功能。
UML图分类
UML图主要分为以下几种:
- 使用案例图
- 类图
- 序列图
- 合作图
- 状态图
- 活动图
- 构件图
- 部署图
为了描述设计模式,类图、状态图和序列图是最常见的图。
描述类的类图
类图就是显示出类、接口以及他们之间的静态结构和关系的图。类图最基本的元素是接口和类。
类图中表示类的框分为以下几层:
1. 类名
2. 属性清单
3. 方法清单
4. 性质清单
- 第一层是类名:类名如果是正体字,表示类是具体的,可以实例化的;如果类名是斜体,表示类是抽象的。
- 第二层是属性:类的属性可以使用public、private或protected修饰。属性的左边有(+),表示它是public;属性左边有(-),表示它是private;属性左边有(#),表示它是protected;
- 第三层是方法:同上,方法的左边有(+),表示它是public;方法左边有(-),表示它是private;方法左边有(#),表示它是protected;如果方法下有下划线,表示这是一个静态方法
- 第四层是性质:性质是由一个属性一个赋值函数和一个取值函数组成的结构。
描述接口的类图
接口的类图和类的类图几乎一样,唯一的区别就是接口的名字有interface的字样。
类图之间的关系
类图之间可以是:一般化关系、关联关系、聚合关系、合成关系和依赖关系。
- 一般化关系:表示类与类之间的继承关系、接口与接口之间的继承关系、类与接口之间的实现关系。一般化关系在java中翻译成extends或者implements。
- 关联关系:表示类与类之间的连接,它使一个类知道另一个类的属性和方法。关联可以是双向的也可以是单向的。