`
wsq
  • 浏览: 10988 次
社区版块
存档分类

Visio2010中UML类图几种关系的总结

阅读更多

红色字体表示的是,在Visio2010中这些术语的叫法(自己感觉是这样的)

在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)

         1.  泛化( Generalization

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

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

        【Visio2010】:归纳

UML类图几种关系的总结  

        2.  实现( Realization

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

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

UML类图几种关系的总结  

        3.  关联( Association)

        【关联关系】:是一种拥有的关系,它使一个类知道另一个类的属性和方法;如:老师与学生,丈夫与妻子关联可以是双向的,也可以是单向的。双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头。

        【代码体现】:成员变量

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

        【Visio2010】:二元关联,没有箭头

UML类图几种关系的总结  

        上图中,老师与学生是双向关联,老师有多名学生,学生也可能有多名老师。但学生与某课程间的关系为单向关联,一名学生可能要上多门课程,课程是个抽象的东西他不拥有学生。 

        下图为自身关联: 

UML类图几种关系的总结

        4.  聚合( Aggregation

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

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

        【代码体现】:成员变量

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

        【Visio2010】:复合,聚合类型为共享,没有箭头

UML类图几种关系的总结  

        5.   组合 (Composition)

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

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

        【代码体现】:成员变量

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

        【Visio2010】:复合,聚合类型为复合,没有箭头

UML类图几种关系的总结

        6.  依赖 (Dependency)

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

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

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

UML类图几种关系的总结  

        各种关系的强弱顺序:

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

        下面这张UML图,比较形象地展示了各种类图关系:

UML类图几种关系的总结

不完全转自:http://blog.csdn.net/tianhai110/article/details/6339565

 

分享到:
评论
1 楼 敲代码的小北 2013-01-30  
好文章啊~~

相关推荐

    UML类图

    在UML类图中,类通常用一个矩形表示,包含三个部分:类名、属性(Attributes)和操作(Operations)。属性表示类的数据成员,操作则表示类的方法或功能。 2. **属性(Attributes)**: 属性是类的内部状态,可以是数据...

    消息队列模型C++源码和UML类图

    在本案例中,`handler.vsd`文件很可能是Visio绘制的UML类图,展示了消息队列模型的各个组件及其关系。通过类图,我们可以清晰地看到类之间的继承层次,方法签名,以及类之间的关联,这有助于我们理解代码的组织结构...

    UML类图的分析与设计

    2. **Microsoft Office Visio 2007**:用于绘制UML类图。 3. **StarUML**:专业的UML建模工具,支持更高级的建模功能。 #### 实验背景分析 随着信息技术的发展,传统的手工管理模式已无法满足日益增长的数据处理...

    第三十一讲:UML类图(上)

    本讲将探讨UML类图,这是UML中最重要的图表类型之一,它用于描绘对象世界的静态结构和关系。我们将深入理解类图的概念、构成元素以及如何创建和解读。 类图是UML中的核心元素,它主要展示了类与类之间的关系,如...

    UML常见图 类图关系

    本篇文章将深入探讨UML类图中的各种关系,以及如何在实际开发中应用这些知识。** 在UML类图中,类是系统中的基本构建块,它们代表了具有共同属性、操作和关系的对象集合。类图通过不同的关系来表达类之间的联系,...

    “VISIO2003建立UML模型”笔记

    在VISIO2003中建立UML模型时,可以创建四个模型:用例模型、分析模型、设计模型和实现模型。通过这种方式,可以清晰地组织项目的各个阶段,并确保每个阶段都有相应的模型支持。 通过以上分析,我们可以看到UML不仅...

    UML基础及Visio建模

    1. **类图(Class Diagram)**:类图是UML中最基本的图表,用于描绘系统的静态结构。它展示了类、接口、对象以及它们之间的关系,如继承、实现、关联、依赖等。 2. **序列图(Sequence Diagram)**:序列图描述对象之间...

    UML2.2-Visio2007

    本资料集“UML2.2-Visio2007”专注于在Microsoft Visio 2007中使用UML2.2进行建模,旨在提供一种轻量级但功能齐全的解决方案。 Visio是一款强大的图形设计软件,尤其适合创建流程图、组织结构图和各种专业图表。在...

    UML学习资料(内附三本电子书和学习笔记)

    UML类图是描述类、接口、协作关系及其属性和操作的一种静态视图,对于理解设计模式的结构和实现至关重要。 2. **UML图例子** 这个文档很可能包含了各种UML图的实际示例,例如用例图、序列图、状态图、活动图、组件...

    Visio 2003 示例-20 个示例图表

    这20个示例图表涵盖了以下几种常见图表类型: 1. **流程图**:用于表示工作流程或决策流程,如泳道图、数据流程图等。 2. **组织结构图**:展示公司或团队的层次结构,便于理解职责分配。 3. **网络图**:描绘...

    uml实验报告成品

    6. **实验总结与反思**:分析实验过程中的难点、解决方案,以及对UML理解的提升。 7. **附录**:可能包含原始数据、额外图表或其他补充材料。 【标签】:UML实验报告成品 【压缩包子文件的文件名称列表】:uml...

    ActionScript3 UML建模工具

    1. 类图(Class Diagram):类图是UML中最常用的图表,用于表示类、接口以及它们之间的关系。在AS3中,类图可以展示类的属性、方法、构造函数以及继承、实现和关联关系。通过类图,开发者可以清晰地看到程序中的对象...

    class 类图 (C#)

    类图是一种UML(统一建模语言)图,它用于描述系统中的静态结构,即系统中不同类之间的关系。在C#中,类图通过图形化的方式表示出类、接口、枚举等元素以及它们之间的关联、继承、实现等关系。 #### 目的意义 类图...

    面向对象技术UML教程

    面向对象技术(Object-Oriented Technology,OOT)是一种软件开发方法,它基于“对象”的概念,将现实世界的问题映射到计算机程序中。UML(Unified Modeling Language),统一建模语言,是面向对象设计和分析的一种...

    UML 实验(仅供参考)

    这可能涵盖以下几种类型的图表: 1. **用例图**:描述用户与系统之间的交互,定义不同角色(如管理员、读者)的用例,以及他们如何使用系统功能。 2. **类图**:展示系统中的类和接口,以及它们的属性、操作和关系...

    UML简明中文教程很好的教材哦

    3. **静态模型**:详细介绍如何使用类图、接口图和对象图来描绘系统中的类、接口和对象,以及它们之间的关系,如继承、实现、关联、聚合和组合等。 4. **动态模型**:阐述状态机图、序列图、协作图、活动图等,展示...

    Visio专业绘图软件

    Visio支持多种绘图类型,包括但不限于以下几种: 1. 流程图:用于表示工作流程,如SWOT分析图、鱼骨图(Ishikawa图)和决策树。 2. 组织结构图:帮助企业描绘出管理层级和员工关系,便于人员管理。 3. 网络拓扑图:...

    UML.rar_uml _uml教程

    **UML(统一建模语言)**是软件工程领域中的一种重要的建模工具,它用于图形化地表示软件系统的设计和实现。UML是面向对象分析与设计(OOA&D)的一部分,它提供了多种图表类型,帮助开发者清晰地表达系统的结构、...

    visio模板(非常实用).zip

    模板种类多样,可能包括但不限于以下几种: 1. **流程图模板**:如业务流程图、数据流程图、决策树等,有助于分析和优化工作流程。 2. **组织结构图模板**:用于描绘公司、部门或项目团队的层次关系,便于理解权限...

    UML建模实验指导书

    主要图形有以下几种: - **用例图(Use Case Diagram)**:展示系统与外部参与者之间的交互,以及系统提供的功能(用例)。 - **类图(Class Diagram)**:描绘类、接口及其相互关系,包括继承、关联、聚合和组合。...

Global site tag (gtag.js) - Google Analytics