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

UML中常用的几种类间关系

UML 
阅读更多

继承

指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中此类关系通过关键字extends明确标识,在设计时一般没有争议性;

实现

指的是一个class类实现interface接口(可以是多个)的功能;实现是类与接口之间最常见的关系;在Java中此类关系通过关键字implements明确标识,在设计时一般没有争议性;

依赖

可以简单的理解,就是一个类A使用到了另一个类B,而这种使用关系是具有偶然性的、、临时性的、非常弱的,但是B类的变化会影响到A;比如某人要过河,需要借用一条船,此时人与船之间的关系就是依赖;表现在代码层面,为类B作为参数被类A在某个method方法中使用;

关联

他体现的是两个类、或者类与接口之间语义级别的一种强依赖关系,比如我和我的朋友;这种关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性 的,一般是长期性的,而且双方的关系一般是平等的、关联可以是单向、双向的;表现在代码层面,为被关联类B以类属性的形式出现在关联类A中,也可能是关联 类A引用了一个类型为被关联类B的全局变量;

聚合

聚合是关联关系的一种特例,他体现的是整体与部分、拥有的关系,即has-a的关系,此时整体与部分之间是可分离的,他们可以具有各自的生命周期, 部分可以属于多个整体对象,也可以为多个整体对象共享;比如计算机与CPU、公司与员工的关系等;表现在代码层面,和关联关系是一致的,只能从语义级别来 区分;

组合

组合也是关联关系的一种特例,他体现的是一种contains-a的关系,这种关系比聚合更强,也称为强聚合;他同样体现整体与部分间的关系,但此 时整体与部分是不可分的,整体的生命周期结束也就意味着部分的生命周期结束;比如你和你的大脑;表现在代码层面,和关联关系是一致的,只能从语义级别来区 分;

对于继承、实现这两种关系没多少疑问,他们体现的是一种类与类、或者类与接口间的纵向关系;其他的四者关系则体现的是类与类、或者类与接口间的引 用、横向关系,是比较难区分的,有很多事物间的关系要想准备定位是很难的,前面也提到,这几种关系都是语义级别的,所以从代码层面并不能完全区分各种关 系;但总的来说,后几种关系所表现的强弱程度依次为:组合>聚合>关联>依赖;

  • 大小: 15.1 KB
  • 大小: 18.6 KB
  • 大小: 14.9 KB
  • 大小: 23.2 KB
  • 大小: 27.4 KB
  • 大小: 13.4 KB
分享到:
评论
1 楼 不复记忆 2009-06-30  
谢谢了,看明白了。

相关推荐

    UML图的基本种类

    ### UML图的基本种类 #### 一、UML概述及重要性 统一建模语言(Unified Modeling Language,简称UML)是一种广泛应用于软件工程领域的图形化建模语言,旨在帮助软件开发者通过标准化的方法来构建软件系统的蓝图。...

    UML类图几种关系的总结

    在这些关系中,强度依次递减的顺序大致为:泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖。这一排序有助于我们在设计类图时理解各个关系的重要性,并选择最合适的表示方式来清晰地表达系统的设计意图。 通过对以上六种...

    UML中的常用基础类图元素详细介绍大全

    UML 中的常用基础类图元素详细介绍大全 UML 中的类图是一种非常重要的模型,用于描述系统中的对象及其相互关系。类图元素是类图的基本组成部分,包括类、接口、包、关联、聚合、合成等。下面将详细介绍每种类图元素...

    UML2.0中的14种图详解

    泛化是继承关系,实现是一种类与接口的关系,依赖是如果一个类的改动会影响到另一个类。 三、组件图 组件图用来表示组件与组件之间、类或接口与组件之间的关系图,使用符号表示组件,使用圆圈表示接口。组件除了...

    UML教程 UML的一切知识都在这里.zip

    "UML的一切知识都在这里"和"UML常用图的几种关系的总结.doc"则提供了更深入的理论和实践指导,帮助你全面掌握UML的各个知识点。通过这些资料,你将能够熟练运用UML进行系统建模,从而更好地规划、设计和实现软件项目...

    UML中图的讲解,相关案例

    类图是UML中最基础的结构图,用于表示系统中的类、接口、协作以及它们之间的关系。类图包括类的名称、属性、操作以及类与类之间的关系,如继承、实现、关联、依赖和聚合。类图有助于设计阶段的抽象和模块划分,也可...

    UML试题(汇集)面试时候用到

    那么,这两种类之间的关系可以用 UML 顺序图或协作图表示出来。 高内聚度是对一个类中的各个职责之间相关程度和集中程度的度量。一个具有高度相关职责的类并且这个类所能完成的工作量不是特别巨大,那么它就具有高...

    The UML and Data Modeling

    在实际应用中,熟练掌握UML数据建模配置文件中的概念及其相互关系,是提升数据模型质量和效率的关键。无论是对于数据分析师还是软件工程师,深入理解UML在数据建模中的应用都将带来显著的好处。

    个人UML学习读书笔记

    总结来说,“个人UML学习读书笔记”可能会详细讲解UML的各个方面,包括基础概念、图的种类、元素关系以及在软件开发中的作用。通过这份笔记,学习者可以系统地掌握UML,并将其应用于实际项目中,提升软件设计的可视...

    [大象-Thinking.in.UML(第二版)].谭云杰.扫描版-pdf

    3. **UML符号和表示法**:书中会详细介绍每种图中的各种符号,如类的矩形、接口的小圆圈、关联线的箭头、泛化关系(继承)的空心三角等。 4. **建模过程**:如何从需求分析到系统设计,逐步构建UML模型,包括问题...

    UML系统建模基础教程课后答案

    - **(3)继承**:继承是一种关系,在这种关系中,一个类(子类)可以从另一个类(父类)继承属性和行为。 - **(4)瀑布模型 喷泉模型 基于组件的开发模型 XP开发模型**:这些是常见的软件开发模型。瀑布模型是一...

    UML_Reference

    3. **类图**:类图是UML中最常见的图,它展示了类、接口、对象以及它们之间的关系,如继承、关联、聚合和组合。类图用于表示静态系统结构。 4. **序列图和协作图**:这两种图属于交互图,用于展示对象间的消息传递...

    UML 教程 PDF

    **UML(Unified Modeling Language)**,统一建模语言,是一种在软件开发过程中广泛使用的建模工具,它为软件工程提供了图形化的表示方法,用于描绘系统的行为、结构和交互。UML通过各种图表来帮助开发者理解和设计...

    使用rose 绘制 uml图的具体教程步骤

    在使用Rose软件绘制UML(统一建模语言)图的教程中,主要涉及了UML图的种类、绘制步骤和操作细节。由于文中描述了使用Rose软件的操作步骤,我们可以推断出教程所包含的关键知识点主要围绕以下几个方面: 首先,教程...

    面向对象方法学 UML

    2. UML图的种类:UML提供了多种图形表示,如用例图(Use Case Diagram)、类图(Class Diagram)、序列图(Sequence Diagram)、协作图(Collaboration Diagram)、状态图(State Diagram)、活动图(Activity ...

    电子科技大学uml期末考试题A卷+答案

    《电子科技大学uml期末考试题A卷+...通过这个考试题,我们可以看到UML涵盖了许多概念,包括用例、类、接口、关系、图的种类和它们各自的作用。理解并熟练运用这些知识对于软件开发过程中的分析、设计和沟通至关重要。

    Visio画UML图基本操作及技巧解析

    在画 UML 图的过程中,连线是最常见的操作。可以通过鼠标右键点击希望改变种类的连接线,在弹出菜单中选择适当的连接线种类。 扩大和缩小 可以通过按住 Ctrl 键,在上滚/下滚鼠标的滚轮来实现扩大和缩小。 上下/...

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

    4.5 初始阶段中有多少UML 第5章 进化式需求 5.1 定义:需求 5.2 进化式需求与瀑布式需求 5.3 寻找需求可以采用的方法 5.4 需求的类型和种类 5.5 UP制品如何组织需求 5.6 本书是否包含这些制品的示例 5.7 ...

Global site tag (gtag.js) - Google Analytics