UML中的六大关系,你能看懂的

标签: uml 关系 | 发表时间:2014-12-06 23:19 | 作者:爱上不吃鱼DE猫
出处:http://www.iteye.com

UML中的六大关系

 

    UML定义的关系主要有六种:依赖、类属、关联、实现、聚合和组合。这些类间关系的理解和使用是掌握和应用UML的关键,而也就是这几种关系,往往会让初学者迷惑。这里给出这六种主要UML关系的说明和类图描述,一看之下,清晰明了;以下就分别介绍这几种关系:

 

    继承

 

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

 

 

    实现

 

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

 

 

    依赖

 

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

 

 

    关联

 

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

 

 

    聚合

 

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

 

 

    组合

 

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

 

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



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [uml 关系] 推荐:

UML中的六大关系

- - CSDN博客推荐文章
       通过不断的学习结合机房收费系统绘制UML图,整个画图的过程中深刻体会到其核心部分还是理解事物之间的关系,总结六大关系来深入学习,主要关系有六种:继承、实现、依赖、组合、聚合、组合.         继承(泛华)关系(Generalization).         继承关系是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中此类关系通过关键字extends明确标识,在设计时一般没有争议性.

软件设计之UML&mdash;UML中的六大关系

- - BlogJava-首页技术区
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency). 1.1、 继承关系—泛化(Generalization). 指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中用extends关键字.

UML中的六大关系,你能看懂的

- - 行业应用 - ITeye博客
    UML定义的关系主要有六种:依赖、类属、关联、实现、聚合和组合. 这些类间关系的理解和使用是掌握和应用UML的关键,而也就是这几种关系,往往会让初学者迷惑. 这里给出这六种主要UML关系的说明和类图描述,一看之下,清晰明了;以下就分别介绍这几种关系:.     指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中此类关系通过关键字extends明确标识,在设计时一般没有争议性;.

UML用例图

- - ITeye博客
用例图主要用来描述 用户、需求、系统功能单元 之间的关系. 它展示了一个外部用户能够观察到的系统功能模型图. 【用途】:帮助开发团队以一种可视化的方式理解系统的功能需求. 用例图所包含的元素如下:. 表示与您的应用程序或系统进行交互的用户、组织或外部系统. 用例就是外部可见的系统功能,对系统提供的服务进行描述.

UML图谱-九种图

- - 博客园_首页
用例图:用于需求分析阶段,描述用户的需求. 元素:角色、用例、关系(依赖、泛化、关联). 二、静态图:从系统的结构来描述. 类图:核心图,描述系统结构.定义系统中的类,描述系统内部结构和类之间的关系. 描述系统的具体时间上,包含的对象和对象之间的关系. 三、行为图:系统的动态模型和对象间的交互. 状态图:类的对象状态,状态之间的转移条件.

UML学习之类图

- - CSDN博客推荐文章
    说到类图(Class Diagram,用来表示系统内部的静态结构),不得不提到类,想要说明类还得阐述一下面向对象与面向过程的区别与联系:.     面向对象与面向过程的区别与联系:.     过去,开发人员在写程序时,需要分模块(Module)、定功能(Function)、定义变量,这些动作在面向对象(Object-Oriented)技术中,一样都没少.

团队沟通利器之UML——用例图

- - 博客园_首页
       在所有的UML图中,最容易理解的是用例图,也是元素最少的一种UML图,也是产品经理最拿手的一种图.     用例图常用来描述需求,让用户第一时间了解系统所具有的功能,可能有人就会问,几个图怎么可能让人一下就了解系统. 所具有的功能的?其实在产品经理的prd中都是“图文相依”的形式展现,这里的“文”也就是“用例描述”.

uml 在需求分析阶段的应用

- - CSDN博客架构设计推荐文章
         上一篇博客写了uml在软件开发过程中的应用,这以篇要详细介绍一下UML在需求分析过程中的应用.          以机房收费系统为例进行讲解,先介绍一个该系统.          首先该系统的用户分为三个等级,一般用户,操作员,管理员,一般用户的权限,能够查看学生余额,充值记录,上机记录,学生上机状态查看等.

有关系,没关系?

- jinn - 左岸读书_blog
我们常说「有关系就没关系,没关系就有关系. 这话一点都没错,而且何止中国人. 不信你看看,连好莱坞都有多少演员,是圈里人的孩子. 原因很简单:第一,近水楼台先得月;第二,你有孩子,我也有,今天我照顾你的,明天你照顾我的,这关系可以利益交换. 政军商界就更甭说了,除了提拔自家人,将来可以利益交换,而且出自同一个圈子,比较安全无虞,用自己人总比用外面来的安全.

互动与关系

- 韩叙 - 坏脾气的小肥
两周前夜观产品,看了美丽说与蘑菇街,短暂观察的结论是美丽说展示强而互动弱,蘑菇街反之. 此外,用人妖号注册美丽说之后,很快有一个人来加我好友,而这时的我无头像,无昵称,无发言,典型的三无人士. 再看加我的这个人,她的好友95%都是三无人士,猜测为运营人员,帮助新人融入社区. 由此引申开来,2.0风格的内容产品有两颗脆弱的蛋蛋,第一是增强互动,第二是发展关系.