UML简介

  在学习设计模式的时候UML图是必须要了解的。

  UML:统一建模语言(Unified Modeling Language)

UML主要包括如下图:

UML简介

  其中,案例图、类图和序列图是最有用的。

 

如下面的解释可以深入理解类图的关系:

UML简介

 

 (1)类class的解释:

  如图的"动物"框,它就代表一个类。类图分为三层,第一层显示类的名称,如果是抽象类,则用斜体表示。第二层是类的特性,通常就是字段和属性。第三层就是类的操作,通常是行为和方法。注意前面的符号,"+" 表示public ,"-" 表示private,"#"表示friendly (默认值,本包可见)。,

  

(2)接口

  如图左下角的"飞翔"就是一个接口。接口与类的区别是顶端有<<interface>>。第一层是接口名称,第二层是接口方法(这种是不赞成在接口中定义属性)

 

补充:接口还有另外一种表示方法,在PowerDesigner中的接口是在名称区加一个带横杠的三角,如下:

 UML简介

(3)继承关系:空心三角形+实线表示

 UML简介

(4)实现关系:空心三角形+虚线表示

 UML简介

(5)关联关系:当一个类知道另一个类时就需要用关联(association),关联用实线箭头表示。

  企鹅需要知道天气的变化。

UML简介

(6)聚合关系:用空心的棱形+实心箭头表示

  看大雁与雁群的关系。大雁是群居动物,每个大雁都属于一个雁群,一个雁群可以有多个大雁。所以说他们满足聚合关系(Aggretation)。聚合是一种弱的"拥有关系",体现的是A可以包含B,但B不是A对象的一部分。

UML简介

(7)组合(合成)关系:用实心的棱形+实心箭头表示

   组合关系是一种强的拥有关系,体现了严格的部分和整体的关系,部分和整体的生命周期一样。比如鸟和鸡翅的关系,其生命周期是一样的。连线两端有基数,如下表示一个鸟有2个翅膀。关联关系、聚合关系也可以有基数。

 UML简介

 

 (8)依赖关系:虚线+箭头表示

  动物依赖于洋气和水,因此形成依赖关系。

  UML简介

 

   编程是一门技术,更是一门艺术。