如何绘制UML图?

首先推荐在线绘制UML的网址:https://www.processon.com/,很好用.

在软件开发过程中,开发人员往往需要通过绘制类图来理清业务的实现思路,从而方便代码实现,也便于后期的代码维护,下面是学习记录:

参考资料:http://www.jianshu.com/p/4cd95d4ddb59

在类图主要元素包括:类,接口,类接口之间关系

一,类:对于面向对象编程而言,类是对具有共同特征的物体的抽象;

在类图中一般的画法是:

如何绘制UML图?

说明:

“+”表示public;

“-”表示private;

"#"表示protected;

类的名称如果用抽象类,名称用斜体表示;

二,接口是一种特殊的类,具有类的结构但是不可以被实例化,只可以被继承(实现),在UML中,接口使用带有名称的小圆圈表示:
如何绘制UML图?

类图中关系:

常见的关系由如下几种:泛化(Generalization),实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)

泛化:一种继承关系,表示一般与特殊的关系,制定了子类如何特化父类的特征和行为,其中箭头方向:带三角箭头的实线,箭头指向父类:

如何绘制UML图?

实现:是一种类与接口的关系,表示类是接口所有特征和行为的实现,其中带三角箭头的虚线,箭头指向接口:
如何绘制UML图?

3.关联关系:是一种拥有的关系,即一个类知道另一个类的属性和方法,如:老师与学生,关联关系可以是单项的也可以是双向的;

其中带普通箭头的实心线,指向被拥有者;

如何绘制UML图?

4.聚合关系:是整体和部分的关系,且部分可以离开整体而单独存在,如轮胎和车是部分和整体的关系,但是轮胎可以离开车而独立存在:

聚合关系是关联关系的一种,是强的关联关系,关联和聚合在语法上无法区分,必须考虑具体的逻辑关系:

其中:带空心菱形的实心线,菱形指向整体:
如何绘制UML图?

组合:是整体和部分的关系,但是部分不能脱离整体而单独存在;

如公司和部门是整体和部分的关系,但是没有公司就不存在部门;

组合关系是关联关系的一种,是比聚合关系还要强的关系;

如何绘制UML图?

6.依赖关系:是一种使用关系,即一个类的实现需要另一个类的协助,所以尽量不要使用双向的依赖关系;

其中带箭头的虚线,指向被使用者;

如何绘制UML图?

各种关系的强弱:

泛化=实现 > 组合  > 聚合 > 关联 > 依赖

上一篇:[android警告] AndroidManifest.xml警告 Should explicitly set android:allowBackup to true or false


下一篇:GitHub与VS2013完成项目管理