UML中的关系主要包含四种:关联关系、依赖关系、泛化关系、实现关系。当中关联关系还包含聚合关系和组合关系。

1、 关联关系(Association)

关联关系式一种结构化的关系,是指一种对象和还有一种对象有联系。给定关联的两个类。能够从当中的一个类的对象訪问到还有一个类的相关对象。

关联关系用一条实线表示。

演示样例

1.1、  聚合关系(Aggregation)

聚合是关联的特例。

聚合是表示总体与部分的关系,即has a 关系。聚合关系中的总体和部分是能够分离的,他们能够具有各自的生命周期,部分能够数据多个总体对象。

演示样例

1.2、  组合关系(Composition)

组合关系式关联关系的一种特例。他体现的是一种contains a的关系。这样的关系比聚合更强。它相同也体现了总体与部分的关系。此时总体与部分是不可分的,总体的生命周期结束也就意味着部分的生命周期结束。

演示样例

`

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbWFzY2Y=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

2、 依赖关系(Dependency)

依赖关系式类与类之间的连接,表示一个类依赖于还有一个类的定义。当中一个类元素是独立的,还有一个类元素不是独立的,它依赖与独立的那个类。

假设独立的类改变,将影响依赖与它的那个类。

演示样例

3、泛化关系(Generalization)

泛化关系式一个类(子类、子接口)继承另外一个类(父类、父接口)的功能。

子类还能够添加自己的新功能。继承是类与类或者接口与几口之间最常见的关系之中的一个。

4、实现关系(Realization)

实现关系指的是一个class类实现interface接口(能够是多个)的功能;实现是类与接口之间最常见的关系。

演示样例:

比較

聚合关系VS组合关系

组合跟聚合差点儿同样,唯一差别就是“部分”不能脱离“总体”而单独存在。

关联关系VS聚合关系

关联关系中两个类是出于同样的层次。而聚合关系中两个类是出于不平等的层次,一个表示总体,一个表示部分。

UML中的四种关系总结的更多相关文章

  1. 盘点UML中的四种关系

    生活中,我们既是独立的个体,又通过联系形成各种关系,比方说:朋友.恋人.父子,同学--于是乎,出现了神乎其神的六人定律. 那么在UML中又存在什么样的关系呢?以下我们来梳理一下. 关联(Associa ...

  2. 【转】UML中的几种关系详细解析

    UML图中类之间的关系:依赖,泛化,关联,聚合,组合,实现 类与类图 1) 类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性.操作.关系的对象集合的总称. 2) 在系统中, ...

  3. uml中的几种关系

    这是一堂关于UML基础知识的补习课:现在我们做项目时间都太紧了,基本上都没有做过真正的class级别的详细设计,更别提使用UML来实现规范建模了:本篇主要就以前自己一直感觉很迷糊的几种class之间的 ...

  4. UML中的几种关系(UML Relationships)

    依赖(Dependency) 依赖可以理解为一个类A使用到了另一个类B,而这种使用关系是具有偶然性的.临时性的.非常弱的,但是B类的变化会影响到A:比如某人要过河,需要借用一条船,此时人与船之间的关系 ...

  5. 【菜鸟也疯狂UML系列】——浅析UML四种关系

    在UML中.关系是很重要的.它抽象出对象之间的联系,让对象构成某个联系起来的结构.以下将简要分析一下UML中的四种关系:关联.依赖,泛化,实现. 一.举例罗列 1.关联(Association) 关联 ...

  6. UML中类图的四种关系及其代码实现

    在uml图中 最复杂的也就是泛化,实现.依赖,关联.这四种关系了,假设弄清了这几种关系那么在理解UML图的时候就会变得轻车熟路了! 假设你对着几种关系一点都不熟悉的话能够看一下uml中的四种关系.这篇 ...

  7. UML---UML中的几种关系(依赖,关联,泛化,实现)

    关于设计模式的总结没有落实到代码上,而且设计模式自己确实动手实现的非常少.所以在这一周里,除了看网站开发的视频,着手开始对设计模式进行实现以下.设计模式非常经典,每次看都有不同的收获,写一下自己的收获 ...

  8. UML 之 四种关系

    学习过UML的人都知道,UML之中有九种图和四种关系,今天,我们先来介绍一下这四种关系: 对于我们这些初学者来说,UML之中无非是  关联.依赖.泛化和实现,但是其中,关联和依赖又如何区分?泛化又如何 ...

  9. UML类图中类与类的四种关系图解

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

随机推荐

  1. jQuery radio 选中提示

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. java解决动态的锁顺序死锁的方案

    直接上代码 public class Test3 { public static Object fromAccount = new String("1"); public stat ...

  3. 【软件构造】(转)Java中的comparable和comparator

    为了方便阅读和复习,转载至此,原地址:温布利往事的博客 阅读目录 一.Comparable简介 二.Comparator简介 三.Comparable和Comparator区别比较 回到顶部 一.Co ...

  4. ORACLE IN 与NOT IN 的性能区别

    业务问题大概可以这样描述,一个父表,一个子表,查询的结果是找到子表中没有使用父表id的记录,这种情况估计很多系统都会牵涉得到.让我们来举一个例子: 表一: 父表 parent 表二: 子表 child ...

  5. react入门(下)

    react生命周期 1. 组件的三个生命周期状态: * Mount:插入真实 DOM * Update:被重新渲染 * Unmount:被移出真实 DOM2. React 为每个状态都提供了两种勾子( ...

  6. Ztree勾选节点后取消勾选其父子节点

    前言: Ztree官方给的API可以设置勾选一个节点的同时勾选子节点或者父节点,也可以设置不影响父子节点,即将chkboxType设置为{"Y":"",&quo ...

  7. buf.slice()

    buf.slice([start[, end]]) start {Number} 默认:0 end {Number} 默认:buffer.length 返回:{Buffer} 返回一个指向相同原始内存 ...

  8. 正则表达式 整理(\w \s \d 点 贪婪匹配 非贪婪匹配 * + ? {} | [] ^ $ \b 单词边界 分组、re.findall()、re.split()、re.search()、re.match()、re.compile()、re.sub())

    re.findall  匹配到正则表达式的字符,匹配到的每个字符存入一个列表,返回一个匹配到的所有字符列表 一. 匹配单个字符 import re # \w 匹配所有字母.数字.下划线 re.find ...

  9. python_字符串常用方法

    1.切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾腚). a = 'ABCDEFGHIJK' print(a[0:3]) # print(a[:3]) 从开头开 ...

  10. AD采集精度中的LSB

    测量范围+5V, 精度10位,LSB=0.0048 精度16位,LSB=0.000076951 测量范围+-5V, 精度10位,LSB=0.009765625,大约为0.01 精度16位,LSB=0. ...