1.UML简介
Unified Modeling Language (UML)又称统一建模语言或标准建模语言。

简单说就是以图形方式表现模型,根据不同模型进行分类,在UML 2.0中有13种图,以下是他们的主要用途简介:

1.用例图:对系统的使用方式分类.

2.类图:显示类和它们的相互关系。

3.对象图:只显示对象及它们的相互关系。

4.活动图:显示人或对象的活动,其方式类似于流程图。

5.状态机图:显示生命周期比较有趣或复杂的对象的各种状态。

6.通信图:显示在某种情形下对象之间发送的消息。

7.顺序图:显示与通信图类以的信息,但强调的是顺序,而不是连接。

8.包图:显示相关的类如何组合,对开发人员有用。

9.部署图:显示安装已完成系统的机器、过程和部署制品。

10.组件图:显示可重用的组件(对象或子系统)及期接口。

11.交互总图:使用顺序图喧赤活动的务个步骤。

12.时间图:显示消息和对象状态的准确时间限制。

13.复合结构图:显示对象在聚合或复合中的相互关系,显示接口和协作的对象

常用的 UML 图可分静(态)图、动(态)图两类,静态图主要描绘软件的静态结构,而动态图主要描绘软件的动态行为。
常用 UML 动态图(5 个):用例图,活动图,状态机图,序列图,通信图。
常用 UML 静态图(4 个):类图,包图,部署图,构件图。 
 
2.UML类图
 
在所有UML图中,类图是使用频率最高的UML图。

类图用于描述系统中所包含的类以及它们之间的相互关系,帮助人们简化对系统的理解,它是系统分析和设计阶段的重要产物,也是系统编码和测试的重要模型依据。

类图主要关系有:泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)

2.1 泛化

【泛化关系】:是一种继承关系, 表示一般与特殊的关系, 它指定了子类如何特化父类的所有特征和行为. 例如:老虎是动物的一种, 即有老虎的特性也有动物的共性.

【箭头指向】:带三角箭头的实线,箭头指向父类

 
 

2.2 实现(Realization)

【实现关系】:是一种类与接口的关系,表示类是接口所有特征和行为的实现.

【代码体现】:类实现接口成员

【箭头指向】:带三角箭头的虚线,箭头指向接口

2.3 关联(Association)

【关联关系】:是一种拥有的关系,它使一个类知道另一个类的属性和方法;

【代码体现】:成员变量

【箭头及指向】:带普通箭头的实心线,指向被拥有者

上图,表示企业和员工的关联关系,员工都属于一个企业

除此之外,关联关系允许互相关联,比如夫妻关系,可以互相关联。也允许自关联,即自己也是自己的成员之一。

2.4 聚合(Aggregation)

【聚合关系】:是整体与部分的关系,且部分可以离开整体而单独存在。如车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在。

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

【代码体现】:成员变量

【箭头及指向】:带空心菱形的实心线,菱形指向整体

2.5 组合(Composition)

【组合关系】:是整体与部分的关系,但部分不能离开整体而单独存在。如公司和部门是整体和部分的关系,没有公司就不存在部门。

组合关系是关联关系的一种,是比聚合关系还要强的关系,它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期。

【代码体现】:成员变量

【箭头及指向】:带实心菱形的实线,菱形指向整体

2.6 依赖(Dependency)

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

【代码表现】:局部变量、方法的参数或者对静态方法的调用

【箭头及指向】:带箭头的虚线,指向被使用者

例如:程序员需要依赖计算机

3.vs2013\2015 中Uml类图的操作
 

在.NET开发中,我们可以使用VS自有的功能方便设计类图,VS2013旗舰版和VS2015企业版都有建模工程,下面介绍一下如何使用VS建模

(1)在VS中新建,选择”建模项目“,如下:

(2)打开建模项目,增加一个UML类图

(3)打开新建的UML类图文件,通过工具栏建立类、接口等,并创建关系

(4)将设计好的UML类图,生成代码

(5)查看生成代码

(6)逆向(由代码生成类图)

在VS中,我们可以将代码很方便的生成UML类图,如下

 
4.总结
    主要介绍了uml多种图的初步介绍,在着重介绍了下UMl类图,后面会和大家在依次介绍一些常用的Uml图。

UML类图中的各种箭头代表的含义(转自:http://www.cnblogs.com/damsoft/archive/2016/10/24/5993602.html)的更多相关文章

  1. UML类图中连接线与箭头的含义(转)

    UML类图是描述类之间的关系 概念 类(Class):使用三层矩形框表示. 第一层显示类的名称,如果是抽象类,则就用斜体显示. 第二层是字段和属性. 第三层是类的方法. 注意前面的符号,'+'表示pu ...

  2. UML类图中箭头和线条的含义和用法

    UML类图中箭头和线条的含义和用法 在学习UML过程中,你经常会遇到UML类图关系,这里就向大家介绍一下UML箭头.线条代表的意义,相信通过本文的介绍你对UML中箭头.线条的意义有更明确的认识. AD ...

  3. UML类图中的六种关系(物理设计阶段)

    UML类图中经常会用到各种箭头和线条来表示不同类或者接口之间的关系,因此非常好的理解各个图标的含义是很有必要的. 在物理设计阶段可以通过EA工具将类图搭建好,然后直接生成物理类,这样也可以减少物理设计 ...

  4. UML类图中的关系和表示方法

    类图是用来描述程序中的类以及它们之间的关系的,使用类图可以帮助我们简化对系统的理解.在UML类图中比较常见的关系有六种,它们分别是:依赖.关联.聚合.组合.泛化.实现,这六种关系中类之间的紧密程度是依 ...

  5. UML类图中最重要的几种类关系及其表示

    阅读UML图最常见到的类与类之间的关系有如下几种: 1.依赖关系 依赖关系是指一个类在计算时,应用了“另一个类”类型的参数,这种关系是偶然.临时.弱的. UML类图中,依赖关系用带单箭头的虚线表示,即 ...

  6. UML类图中的关系表示

    UML类图中的关系和表示方法 类图是用来描述程序中的类以及它们之间的关系的,使用类图可以帮助我们简化对系统的理解.在UML类图中比较常见的关系有六种,它们分别是:依赖.关联.聚合.组合.泛化.实现,这 ...

  7. 【转载】UML类图中箭头和线条的含义和用法

    文章转载自 http://blog.csdn.net/hewei0241/article/details/7674450 https://blog.csdn.net/iamherego/article ...

  8. UML类图中的几种关系的画法和含义

    UML的类图中,一共有以下六大关系: 泛化(Generalization), 实现(Realization), 依赖(Dependence),关联(Association),聚合(Aggregatio ...

  9. UML类图中的几种关系总结

           UML类图,描写叙述对象和类之间相互关系的方式包含:依赖(Dependency).关联(Association).聚合(Aggregation).组合(Composition).泛化(G ...

随机推荐

  1. [css]浮动-清除浮动的3种方法

    清除浮动的方法: 内墙法 注: 这是个奇淫技巧,没什么原理可言,记住即可 这个技巧又使得父box重新可以被子box撑开高度了. 隔墙法-适用于2个box之间上下排列 由于2个box高度依旧是0, 彼此 ...

  2. MapReduce的几个实现

    1.倒排索引的实现 import java.io.IOException; import java.util.StringTokenizer; import org.apache.hadoop.con ...

  3. (10)场景转换(Transitions)

    Cocos2d-x最爽的一个特性之一就是提供了在两个不同场景之间直接转换的能力.例如:淡入淡出,放大缩小,旋转,跳动等.从技术上来说,一个场景转换就是在展示并控制一个新场景之前执行一个转换效果. 场景 ...

  4. 时间格式—My97DatePicker控件使用

    一.My97DatePicker控件使用(2步):   1:JSP页面:( class="Wdate" 显示控件图标) 引入控件包中的脚本: <script type=&qu ...

  5. zw版【转发·台湾nvp系列Delphi例程】HALCON DispArc

    zw版[转发·台湾nvp系列Delphi例程]HALCON DispArc zw版[转发·台湾nvp系列Delphi例程]HALCON DispArc----------RAD Studio XE D ...

  6. linux 常用命令总结(二)

    1. linux下以指定的编码打开文件:LANG=zh_CN vi fileName 2. 查看系统内存使用,可以使用free -m 或 top 3. 使用env查看所有环境变量 4. df –h 查 ...

  7. CSS3 页面中展示邮箱列表点击弹出发送邮件界面

    CSS3 页面中展示邮箱列表点击弹出发送邮件界面 代码: <!DOCTYPE html> <html> <head> <meta charset=" ...

  8. 2017-2018-1 JaWorld 第八周作业

    2017-2018-1 JaWorld 第八周作业 团队分工 成员 分工 陈是奇 统计成员工具选择 马平川 类图 王译潇 编码规范 李昱兴 用例图 林臻 状态图 张师瑜 推进工作进展.写博客 UML ...

  9. c#pdf查看器

    Free Spire.PDF for .NET is a Community Edition of the Spire.PDF for .NET, which is a totally free PD ...

  10. python 操作Excel表格,解压zip包,压缩zip包,目录遍历

    import zipfile import os,shutil import openpyxl file_list_pos="" fileName="" zip ...