`
flyPig
  • 浏览: 137595 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

UML的几个概念

    博客分类:
  • UML
阅读更多
转载自http://blog.csdn.net/sfdev/archive/2009/02/18/3906243.aspx

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



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



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


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


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


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


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

相关推荐

    UML模型的基本概念

    在UML模型中,有几个核心的基本概念,这些概念构成了UML的基石,帮助开发者和项目团队构建出清晰、一致的软件设计模型。 1. **类(Class)**:类是UML中的基本构造块,代表现实世界中具有相同属性、操作和关系的一组...

    UML/UML介绍

    UML的概念和图形元素可以概括为以下几大类: 1. **类图(Class Diagram)**:类图是UML中最基本的图表之一,用于表示系统的静态结构。它展示了类、接口以及它们之间的关系,如继承、关联、依赖和实现。类图中的类通常...

    ULM统一建模语言,UML基本概念

    UML的静态建模机制主要关注系统的结构,主要包括以下几种图: 1. **类图(Class Diagram)**:显示类、接口、协作以及它们之间的关系,如继承、实现、关联等。类图用于描述系统中的类和对象结构。 2. **对象图...

    UML期末大作业

    通过完成这个UML期末大作业,你不仅能够掌握UML的基本概念和图形表示,还能了解到如何将UML应用于实际的软件设计和开发过程中。同时,它也是提升问题解决能力、逻辑思维能力和团队协作能力的良好实践。在后续的学习...

    大象—Thinking in UML

    基础篇对UML的基础概念重新组织和归纳整理,进行扩展和讨论,引申出针对UML的这些概念在面向对象方法中应用方法的思考。进阶篇以一个实例贯穿全篇,阐述如何使用UML从头到尾地实施一个项目。总结篇针对在现实中经常...

    面向对象技术UML教程

    通过本教程的学习,读者可以掌握UML的基本概念、图示以及在软件开发过程中的应用,从而提升面向对象设计的效率和质量。同时,对UML的深入理解和熟练运用也能为项目管理和团队协作带来显著的便利。

    大象 Tinking in UML

    基础篇对UML的基础概念重新组织和归纳整理,进行扩展和讨论,引申出针对UML的这些概念在面向对象方法中应用方法的思考。进阶篇以一个实例贯穿全篇,阐述如何使用UML从头到尾地实施一个项目。总结篇针对在现实中经常...

    UML经典学习内容

    用例图是UML中表达需求的重要工具,主要包括以下几个元素: 1. 参与者(Actor):外部系统或用户,与系统交互的角色。 2. 用例(Use Case):描述了参与者如何使用系统实现其目标,每个用例都是一个功能或服务。 ...

    大象 Thinking in UML

    基础篇对UML的基础概念重新组织和归纳整理,进行扩展和讨论,引申出针对UML的这些概念在面向对象方法中应用方法的思考。进阶篇以一个实例贯穿全篇,阐述如何使用UML从头到尾地实施一个项目。总结篇针对在现实中经常...

    UML2工具箱(强烈建议UML玩家看看)

    本书的核心内容包括以下几个方面: 1. **UML基础**:首先,书中会详细介绍UML的基本概念和核心元素,如类、对象、接口、协作、用例、状态机和活动图等。这些都是理解和创建UML模型的基础。 2. **UML2的新特性**:...

    UML课件及课本

    在UML的课件中,你可以期待涵盖以下几个核心概念: 1. **用例图(Use Case Diagrams)**:展示系统外部用户与系统交互的场景,通过用例来描述系统功能需求。 2. **类图(Class Diagrams)**:表示系统的静态结构,...

    uml programing guide(uml建模指南)

    本书的知识点主要包括以下几个方面: 1. **UML基础概念**:介绍UML的基本术语,如类、对象、接口、关系等,以及UML的核心元素,如用例图、静态结构图(类图、对象图、包图、组件图、部署图)、动态行为图(序列图、...

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

    在学习UML的过程中,可以参考"UML详解"文档,了解UML的基础概念和术语;通过"UML有几种图_百度知道.url"获取关于UML图的常见问题解答;"UML的一切知识都在这里"和"UML常用图的几种关系的总结.doc"则提供了更深入的...

    《大象-Thinking_in_UML(第二版)》高清带书签

    第二部分对UML的基础概念重新组织和归纳整理,进行扩展和讨论,引申出针对UML的这些概念在面向对象方法中应用方法的思考。第三部分以一个实例贯穿全篇,阐述如何使用UML从头到尾地实施一个项目。第四部分针对在现实...

    内部UML培训材料

    我认为,在业务系统的需求分析阶段,重点要解决的就是系统的业务模型(功能和边界)、概念模型(概念和概念之间的关系)、行为模型(流程)和界面模型(重要的操作模式)几个方面的问题。其中业务模型可以用用例表达...

    计算器 UML类图 c++

    对于一个计算器应用,我们可以设想几个关键的类:`Calculator`(计算器)、`Expression`(表达式)、`Operand`(操作数)以及可能的`Operator`(运算符)类。 1. **Calculator类**:这个类是整个计算逻辑的核心,它...

    UML Programming Guide 中文完整版

    UML的核心概念包括以下几个方面: 1. **图表类型**:UML提供了多种图表来表示不同的视角,如用例图(Use Case Diagrams)描述系统外部行为,类图(Class Diagrams)展示类与类之间的关系,对象图(Object Diagrams...

    UML建模的好几门教材的相关课件、电子书和源代码资源

    《UML建模的好几门教材的相关课件、电子书和源代码资源》是一份珍贵的学习资料集合,其中包含了多本关于UML建模的教材电子版、教学课件以及配套的源代码,旨在帮助学习者深入理解并掌握统一建模语言(Unified ...

    UML Distilled(UML精华)-3rd-(英文版&繁体中文版)

    UML Distilled第三版的内容涵盖了以下几个关键知识点: 1. **基本图元和关系**:书中介绍了UML中的基本图元,如类、接口、对象、用例、活动和状态机,以及它们之间的关系,如关联、依赖、泛化和实现等。理解这些...

    Visual Paradigm for UML

    这个文件可能包含了完整版本的VP UML,或者是一个已经配置好的项目模板,供用户直接导入和使用。使用这样的文件,用户可以直接体验VP UML的强大功能,快速开始他们的UML建模工作。 总的来说,Visual Paradigm for ...

Global site tag (gtag.js) - Google Analytics