`
smallvq123
  • 浏览: 35817 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

UML类间关系总结

阅读更多
类之间的关系

  UML把类之间的关系分为以下5种.

  ● 关联:类A与类B的实例之间存在特定的对应关系

  ● 依赖:类A访问类B提供的服务

  ● 聚集:类A为整体类,类B为局部类,类A的对象由类B的对象组合而成

  ● 泛化:类A继承类B

  ● 实现:类A实现了B接口 

关联(Association)

  关联指的是类之间的特定对应关系,在UML中用带实线的箭头表示。按照类之间的数量对比,关联

可以分为以下三种:

  ● 一对一关联

  ● 一对多关联

  ● 多对多关联

注意:关联还要以分为单向关联和双向关联

依赖(Dependency)

  依赖指的是类之间的调用关系,在UML中用带虚线的箭头表示。如果类A访问类B的属性或者方法,

或者类A负责实例化类B,那么可以说类A依赖类B。和关联关系不同,无须在类A中定义类B类型的属性。

聚集(Aggregation)

  聚集指的是整体与部分之间的关系,在UML中用带实线的菱形箭头表示。

聚集关系还可以分为两种类型:

  ● 被聚集的子系统允许被拆卸和替换,这是普通聚集关系。

  ● 被聚集的子系统不允许被拆卸和替换,这种聚集称为强聚集关系,或者组成关系。

   注:强聚集(组成)可用带实线的实心菱形箭头表示。  

泛化(Generalization)

  泛化指的是类之间的继承关系,在UML中用带实线的三角形箭头表示。 

实现(Realization)

  实现指的是类与接口之间的关系,在UML中用带虚线的三角形箭头表示。

以下是GOF设计模式中的描述:

       箭头和三角表示子类关系。

           虚箭头线表示一个类实例化另一个类的对象,箭头指向被实例化的对象的类。

           普通的箭头线表示相识(acquaintance也叫关联或者引用),意味着一个对象仅仅知道另一个对象。相识的对象可能请求彼此的操作,但他们不为对方负责,它只标示了对象间较松散的耦合关系。

           尾部带有菱形的箭头线表示聚合(aggregation),意味着一个对象拥有另一个对象或者对另一个对象负责。一般我们称一个对象包含另一个对象,或者是另一个对象的一部分。聚合意味着聚合对象和其所有者具有相同的生命周期。  
          抽象类名以斜体表示,抽象操作也以斜体表示。图中可以包括实现操作的伪代码,代码将出现在带有褶角的框中,并用虚线将该褶角框与代码所实现的操作相连。

分享到:
评论

相关推荐

    UML类关系-依赖,关联,聚合和组合

    UML类关系-依赖,关联,聚合和组合 这几种关系很容易混淆,一个总结文档。

    UML类图几种关系的总结

    UML类图几种关系的总结

    UML建模系列文章总结

    1、需求阶段如何书写Use Case 2.设计阶段如何画用例图(Use-Case Diagram) 3、类与类之间的关系图(Class Diagram,UML图) .......... 8、UML建模之数据建模(Data Model Diagram)

    UML 九种视图总结

    UML的各种关系泛化,依赖、关联,实现等总结,以及类图、流程图、活动图、时序图等的学习

    UML:类图关系总结

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

    Ext 深入剖析,使用UML对Ext类关系解读

    花费半年心血研究解读总结。包含了Ext的核心类解析,Ext对象原理,Ext事件模型,Ext布局模型,AJAX原理,Ext数据模型的本质原理;UML图例详解。

    UML类图几种关系的总结 - OPEN 开发经验库

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

    UML类图说明类图关系

    大家知道,UML类图之间的关系确实难以理解,而诸多教材中的解释又各不相同;我是查阅了了很多教程后,总结出的相对具有共性的解释了; 实例介绍了类图之间的关系及面向对象的相关概念 同时,介绍了EA下类图各关系的...

    uml最基础的九种图,简单易懂

    我一直把UML当作整理思路的工具,在工作当中,不应该为了UML而UML,当一个软件已经设计完成或者相对简单的时候,就没有必要套在UML的框框中,效率是第一的。本文主要是对uml一些基础关系的总结。

    UML和模式应用(架构师必备).part07.rar

    32.9 软件中的类层次结构和继承关系 32.10 关联类 32.11 聚合关系和组合关系 32.12 时间间隔和产品价格—解决迭代1阶段的“错误” 32.13 关联角色名称 32.14 作为概念的角色与关联中的角色 32.15 导出元素 32...

    uml 基础、案例与应用(第三版)

    UML基础、案例与应用(第三版) 目录 第一部分 基础知识 第1章 UML简介 3 1.1 在纷繁复杂中寻求解决问题的办法 3 1.2 UML的诞生 4 1.3 UML的组成 5 1.4 其他特征 12 ...附录C UML图总结 322

    uml实验报告整合

    2.使用UML工具软件构建系统的分析类图。 二、实验器材 1.计算机一台。 2.Rational Rose 工具软件。 三、实验内容 根据***系统开发进度,在完成对系统的需求建模,得到用例模型后,应针对每个用例进行分析,识别出...

    UML对象设计与编程

    《UML对象设计与编程》系统地阐述了对象技术的基本概念,详细讲解了统一建模语言(UML)、对象类(Class)和对象实例(Instance)、关联(Aaaociation)和继承(Inheritance)、对象替代和多形性、静态和动态模型、...

    UML和模式应用(架构师必备).part06.rar

    32.9 软件中的类层次结构和继承关系 32.10 关联类 32.11 聚合关系和组合关系 32.12 时间间隔和产品价格—解决迭代1阶段的“错误” 32.13 关联角色名称 32.14 作为概念的角色与关联中的角色 32.15 导出元素 32...

    UML和模式应用(架构师必备).part02.rar

    32.9 软件中的类层次结构和继承关系 32.10 关联类 32.11 聚合关系和组合关系 32.12 时间间隔和产品价格—解决迭代1阶段的“错误” 32.13 关联角色名称 32.14 作为概念的角色与关联中的角色 32.15 导出元素 32...

    基于UML建模软件的SFMEA方法研究

    (2) 阐明了UML与RUP的关系和各自特点,总结了UML对SFMEA的重要作用,建立了RUP核心工作流与相应的UML模型的关系,确定了在各个阶段进行SFMEA的分析依据; (3) 分别在RUP需求、分析和设计三个核心工作流阶段,针对...

    UML用例图总结

    用户、需求、系统功能单元之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。【用途】:帮助开发团队以一种可视化的方式理解系统的功能需求。用例图所包含的元素如下:表示与您的应用程序或系统进行交互...

    UML之类图和对象图

    )类在很多方面和组件相同:(2)都可以实现一组接口(3)都可以参与依赖关系(4)都可以被嵌套(5)都可以有实例(6)都可以参与交互但是也会有一些区别:(1)类描述软件设计的逻辑组织和意图,组件描述软件设计的...

Global site tag (gtag.js) - Google Analytics