源码必备--图解UML类图(最易懂)

阅读更多

一张图看懂UML的类图图示样例: 

源码必备--图解UML类图(最易懂)_第1张图片
 

 

一、UML中类图符号解释

1.类(Class):使用三层矩形框表示。

第一层显示类的名称,如果是抽象类,则就用斜体显示。

第二层是字段和属性。

第三层是类的方法。

注意前面的符号,‘+’表示public,‘-’表示private,‘#’表示protected。我们的示意图中未列属性字段,因此画了两层.

源码必备--图解UML类图(最易懂)_第2张图片

2.接口:使用两层矩形框表示,与类图的区别主要是顶端有<>显示。

第一行是接口名称,第二行是接口方法。

接口还有一种表示方法,叫棒棒糖表示法,圆圈旁为接口名称:

源码必备--图解UML类图(最易懂)_第3张图片
 
 

3.泛化(Generalization),也就是继承(extends)关系:用空心三角形+实线来表示,是A is a B的关系。

下图中ExecutorService继承了Executor,也就是ExecutorService is a Executor。

源码必备--图解UML类图(最易懂)_第4张图片
 

4.实现(Realization),也就是实现接口(implements):用空心三角形+虚线来表示。下图中ScheduledThreadPoolExecutor实现了接口ScheduledExecutorService。


源码必备--图解UML类图(最易懂)_第5张图片
 

5.关联(Association):用 实线箭头 来表示,例如:企鹅与气候,图示表示和代码表示如下:

源码必备--图解UML类图(最易懂)_第6张图片
 

 
 

6.聚合(Aggregation):用 空心的菱形+实线箭头 来表示

聚合:表示一种弱的‘拥有’关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分,关系图和代码图示如下:


源码必备--图解UML类图(最易懂)_第7张图片
 

 
 

 

7、组合(Composition):用 实心的菱形+实线箭头 来表示

组合:部分和整体的关系,并且生命周期是相同的。关系图示和代码图示如下:


源码必备--图解UML类图(最易懂)_第8张图片
 

 

注意:这里包含基数的概念,连线两端的数字表明这一端的类可以有几个实例,比如,一个鸟应该有两只翅膀。如果一个类可能有无数个实例,则就用‘n’来表示。关联、聚合、组合是有基数的。 

 

8.依赖(Dependency):用 虚线箭头 来表示,关系图示与代码示例如下:


源码必备--图解UML类图(最易懂)_第9张图片
 
源码必备--图解UML类图(最易懂)_第10张图片
 
 

  • 源码必备--图解UML类图(最易懂)_第11张图片
  • 大小: 177.8 KB
  • 源码必备--图解UML类图(最易懂)_第12张图片
  • 大小: 60.5 KB
  • 源码必备--图解UML类图(最易懂)_第13张图片
  • 大小: 23.8 KB
  • 源码必备--图解UML类图(最易懂)_第14张图片
  • 大小: 50.6 KB
  • 源码必备--图解UML类图(最易懂)_第15张图片
  • 大小: 36.5 KB
  • 源码必备--图解UML类图(最易懂)_第16张图片
  • 大小: 31.2 KB
  • 源码必备--图解UML类图(最易懂)_第17张图片
  • 大小: 44.5 KB
  • 源码必备--图解UML类图(最易懂)_第18张图片
  • 大小: 54.2 KB
  • 源码必备--图解UML类图(最易懂)_第19张图片
  • 大小: 52.9 KB
  • 查看图片附件

你可能感兴趣的:(UML)