UML类图

引言

为了完成系统的分析和设计工作,不可避免的我们需要用到一些工具,UML类图就是不可或缺的重要工具之一。类图表示了类之间的关系,对于整个系统架构来说至关重要,下面我们就常见的类图进行总结说明。

具体类的表示

一般而言,我们用矩形框来表示类,成员和方法分别在矩形框中显示,其中

  • “+” 表示 public
  • “-“ 表示 private
  • “#” 表示 protected

因此一个类的表示可以如下所示:

umlClassDemo

类的关系

在类图中,类一共有6种关系,下面我们来一一说明

实现关系

所谓实现,就是类实现接口,可以用如下的虚线空心箭头表示
umlRealization

泛化关系

繁华表示类与类之间的继承关系,用实线以及空心箭头表示
umlGeneralization

关联关系

关联关系是类与类之间的联结,他是一个类知道另一个类的属性和方法,一般通过使用成员变量的方式实现。用实现和开口箭头表示,关联关系可以是双向的
umlAssociation

依赖关系

依赖关系也是类与类之间的联结,它属于一种弱的关联关系,一个对象用到了另一个对象,则属于以来关系,依赖关系用虚线和开口箭头表示。一般而言,依赖是单向的。

umlDependency

组合关系

组合也是关联关系的一种特性,它也体现了整体与局部的关系,只不过他是”contain a”的关系。用实心菱形和直线表示
如下面的例子,车子由轮子组成,如果没有了轮子,这就不是车了,这是与聚合关系不同的地方
umlComposition

聚合关系

聚合关系是关联关系的一种特例,它体现了整体与局部的关系,也就是”has a”, 用菱形和直线表示。
如下面的例子,部门是由员工聚合而成的,少了一个员工,也不影响部门的存在,这就是聚合
umlAggregation

总结

上面就是类图常见的六种关系,他们的强弱程度如下:

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

显示 Gitment 评论