UML急速入门

  

UML是什么

  

UML定义:

  
      <李>统一建模语言(统一建模语言,缩写UML)   <李>非专利的第三代建模和规约语言李   
  

UML特点:

  
      <李> UML是一种开放方法   <李>用于说明,可视化,构建和编写一个正在开发的,面向对象的,软件密集系统的制品的开放方法   <李> UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效李   
  

在UML2.2中一共定义了14中图示,大体分为三类:

  
      <李>结构式图形:强调的是系统式的建模李   <李>行为式图形:强调系统模型中触发的事件   <李>交互式图形:属于行为式图形的子集、强调系统模型中资料流程李   
  

1。结构式图形:

  
      <李>静态图(类图,对象图、包图)   <李>实现图(组件图、部署图)   <李>剖面图   <李>复合结构图   
  

2。行为式图形:

  
      <李>活动图   <李>状态图   <李>用例图   
  

3。交互式图形:

  
      <李>通信图   <李>交互概述图(UML2.0)   <李>时序图(UML2.0)   <李>时间图(UML2.0)   
  <人力资源/>   

UML类图:

  

类图(类图):用于表示类,接口,实例等之间相互的静态关系,虽然名字叫类图,但类图中并不只有类。我们来看一个比较全面的UML类图样例:
 UML急速入门

  

首先在图的上方可以看到一个“动物“矩形框,这个矩形框就代表一个类,类图分三层,第一层是类的名称,如果是抽象类,类名会使用斜体表示。第二层是类的属性,也就是类的字段或变量。第三层是类的行为,也就是方法或者说函数。

  

图中左下角的“飞翔”表示一个接口图,与类图的主要区别是接口图顶端有<代码>,lt;, lt; interface& gt;和gt;>   

然后我们来简单说说子类与父类及实现类与接口的关系在UML类图中的表示方式:

  
  

当类与类之间是继承关系时,使用空心三角形和实线来表示,而一个类实现了一个接口时,使用空心三角形和虚线来表示,不管是继承关系还是实现关系,三角形箭头都是由子类指向父类或接口

     

类与类之间的关系及其在UML类图中的表示方式,关联关系:

  
  

当一个类“知道“另一个类时,那么它们就具有关联关系,关联关系使用实线箭头表示,例如图中的企鹅需要知道气候这个类,此时企鹅类与气候类就是关联关系

     

聚合关系:

  
  

图中的大雁群和大雁这两个类就是聚合关系,我们都知道大雁是群居动物,多只大雁可以聚合成一个雁群,所以它们之间就满足聚合关系。聚合表示一种弱的“拥有关系”,体现的是一个对象可以包含B对象,但B对象不是一个对象的一部分。聚合关系使用空心菱形和实线箭头来表示

     

合成(组合)关系:

  
  

合成是一种强的“拥有“关系,体现了严格的部分和整体的关系,部分与整体的生命周期一样上。图中的鸟和其翅膀就是合成(组合)关系,因为它们是部分和整体的关系,并且翅膀和鸟的生命周期是相同的。合成关系用实心的菱形和实线箭头来表示。另外,在图中合成关系的连线两端还有一个数字1和数字2,这被称为基数,表明这一端的类可以有几个实例。很显然,一只鸟应该有两只翅膀,所以翅膀的基数是2。如果一个类可能有无数个实例,则就用n来表示。除了合成关系外关联关系以及聚合关系也可以有基数

     

依赖关系:

  
  

我们都知道动物维持生命就得进行新陈代谢,那么就需要氧气、水等物质。也就是说,动物依赖于氧气和水,所以它们之间是依赖关系,使用虚线箭头来表示。

     <人力资源/>   

接着我们再来看单个类的类图:
 UML急速入门

  

同样的从上至下分别是类名,属性以及行为。属性和行为前面都有权限表示符,+表示,——表示,#表示保护,~表示违约。属性和行为中有下划线的表示静态的,即静态的属性,方法。

UML急速入门