【菜鸟也疯狂UML系列】——浅析UML四种关系
在UML中。关系是很重要的。它抽象出对象之间的联系,让对象构成某个联系起来的结构。以下将简要分析一下UML中的四种关系:关联。依赖,泛化,实现。
一、举例罗列
1、关联(Association)
关联是用来连接有结构关系的对象,能够连接同样类或者不同类。也能够是双向关联和单向关联。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbHVja3lzdGFyNjg5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
(1)聚合(Aggregate)
表示的是实体对象之间的关系,表达总体与部分的关系,总体由部分构成,可是此关系不是强依赖关系,也就是说,部分不会依据总体的消失而消失。
聚合关系用一条空心菱形箭头直线表示。箭头指向总体。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbHVja3lzdGFyNjg5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
(2)组合(Composition)
表示实体对象关系,表达总体与部分的关系,总体拥有部分。是强依赖的聚合关系,部分会随着总体的消失而消失。
组合关系用一条实心菱形箭头直线表示,箭头指向组合的母对象,也就是总体,表示部分属于总体。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbHVja3lzdGFyNjg5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
2、依赖(Dependency)
依赖关系用一条带箭头的虚线表示,箭头指向被依赖的对象。也能够表使用关系。
3、泛化(Generalization)
用空心箭头的直线表示,箭头指向被继承的对象。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbHVja3lzdGFyNjg5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
4、实现(Realize)
二、比較分析
1、聚合VS组合
两者都是表示总体与部分的关系,可是不同的是,组合是强依赖聚合关系。部分脱离总体便不再存在。而聚合关系。部分脱离总体还能够继续存在。
2、关联VS依赖
刚開始分不清关联和依赖,后来看了视频里讲的是依赖能够作为使用关系,在不同场景下的使用关系。没有场景就没有关系;而关联不同,关联表示的是两个对象之间的关系。不会消失的。
3、泛化VS实现
但从绘图方面来看。除了一个是直线。一个是虚线外没有什么不同的。
关系的强弱也一样。
依赖<关联<聚合<组合<泛化=实现
三、总结
【菜鸟也疯狂UML系列】——浅析UML四种关系的更多相关文章
- UML中类图的四种关系及其代码实现
在uml图中 最复杂的也就是泛化,实现.依赖,关联.这四种关系了,假设弄清了这几种关系那么在理解UML图的时候就会变得轻车熟路了! 假设你对着几种关系一点都不熟悉的话能够看一下uml中的四种关系.这篇 ...
- UML 之 四种关系
学习过UML的人都知道,UML之中有九种图和四种关系,今天,我们先来介绍一下这四种关系: 对于我们这些初学者来说,UML之中无非是 关联.依赖.泛化和实现,但是其中,关联和依赖又如何区分?泛化又如何 ...
- UML类图中类与类的四种关系图解
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- ZT 类与类之间的四种关系
csdn上一个好贴子:http://bbs.csdn.net/topics/390646332 类与类之间的四种关系1.依赖(Dependency) 类A在类B中作为一个成员函数的参数或者是返回值 ...
- uml的四种关系
UML的四种常用关系: 泛化关系.关联关系.实现关系.依赖关系 其中泛化关系是指父类与子类之间的继承关系: 实现关系是指接口与实现类之间的关系: 依赖关系和关联关系的区别如下: 只要存在对象间的交互, ...
- UML中的四种关系总结
UML中的关系主要包含四种:关联关系.依赖关系.泛化关系.实现关系.当中关联关系还包含聚合关系和组合关系. 1. 关联关系(Association) 关联关系式一种结构化的关系,是指一种对象和还有一种 ...
- 盘点UML中的四种关系
生活中,我们既是独立的个体,又通过联系形成各种关系,比方说:朋友.恋人.父子,同学--于是乎,出现了神乎其神的六人定律. 那么在UML中又存在什么样的关系呢?以下我们来梳理一下. 关联(Associa ...
- UML常用图的几种关系的总结
在UML的 类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization), 关联(Association), 聚合(Aggregation), 组合(Com ...
- UML中类之间的几种关系
类之间可能存在以下几种关系:关联(association).依赖(dependency).聚合(Aggregation,也有的称聚集).组合(Composition).泛化(generalizatio ...
随机推荐
- ZOJ 3279-Ants(线段树)
传送门:zoj 3279 Ants Ants Time Limit: 2 Seconds Memory Limit: 32768 KB echo is a curious and cleve ...
- JDBC浅析
今天简单的说一下jdbc,本来这玩意儿也很简单. 大家只需要记住其中的几个重要的类就行了,它们都在sql包里.今天主要是拿mysql来连接.先看一下主要的几个类吧. 1.Conenction 2.St ...
- hihoCoder #1831 : 80 Days-RMQ (ACM/ICPC 2018亚洲区预选赛北京赛站网络赛)
水道题目,比赛时线段树写挫了,忘了RMQ这个东西了(捞) #1831 : 80 Days 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 80 Days is an int ...
- 转:LLVM与Clang的概述及关系
转:http://www.cnblogs.com/saintlas/p/5738739.html LLVM是构架编译器(compiler)的框架系统,以C++编写而成,用于优化以任意程序语言 ...
- 转:攻击JavaWeb应用[9]-Server篇[2]
转:http://static.hx99.net/static/drops/papers-869.html 攻击JavaWeb应用[9]-Server篇[2] 园长 · 2014/01/22 12:5 ...
- Memory Allocation with COBOL
Generally, the use of a table/array (Static Memory) is most common in COBOL modules in an applicatio ...
- Redux 和 Redux thunk 理解
1: state 就像 model { todos: [{ text: 'Eat food', completed: true }, { text: 'Exercise', completed: fa ...
- 【二分答案+智障的字符串hash】BZOJ2946-[Poi2000]公共串(Ranklist倒一达成!!!!!)【含hash知识点】
[题目大意] 给出几个由小写字母构成的单词,求它们最长的公共子串的长度. [字符串hash的小笔记] hash[i]=(hash[i-1]*p+idx(s[i]))%mod,idx为映射值,一般a.. ...
- JDK源码学习笔记——HashMap
Java集合的学习先理清数据结构: 一.属性 //哈希桶,存放链表. 长度是2的N次方,或者初始化时为0. transient Node<K,V>[] table; //最大容量 2的30 ...
- 浙南联合训练赛 H - The number of positions
Petr stands in line of n people, but he doesn't know exactly which position he occupies. He can say ...