【菜鸟也疯狂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 ...
随机推荐
- 归并排序(MergeSort)
原帖:http://blog.csdn.net/magicharvey/article/details/10192933 算法描述 归并排序(MergeSort)是采用分治法的一个非常典型的应用.通过 ...
- thinkjphp 模板中获取url中的action
<if condition="ACTION_NAME eq 'add'">新增<else/>编辑</if>
- eclipse 查看jdk源码
eclipse中引入jdk源码的设置: 设置: 1.点 "window"-> "Preferences" -> "Java" ...
- 一个Bean属性拷贝的工具类
package com.fpi.spring.qaepb.cps.util; import java.beans.IntrospectionException; import java.beans.P ...
- android viewpager fragment 优化 切换界面 延时加载
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 使用 碎片的 设置用户可见暗示visible hint 这个方法来做到. hint 是 ...
- python3-开发进阶Django-form组件中model form组件
Django的model form组件 这是一个神奇的组件,通过名字我们可以看出来,这个组件的功能就是把model和form组合起来,先来一个简单的例子来看一下这个东西怎么用:比如我们的数据库中有这样 ...
- 让Code First下的数据库的迁移更加简单
Code First给我们的程序开发带了很多便利,之前的版本中一个比较不大方便的地方是数据库迁移,麻烦不说,往往还和上下文相关,在不同的版本之间的数据库进行迁移还很容易失败,并且一旦失败还不大容易找到 ...
- winform窗体MaximizeBox
如果MaximizeBox为false会导致Form2窗体底部不显示. =>解决办法TopMost属性为true. Form2 _frm2 = new Form2(); _frm2.Maximi ...
- FORM动态LIST ITEM
DECLARE rg_list_item recordgroup; ret_code NUMBER; BEGIN --SQL里必做是以值键两个字段顺序,并且都要为字符串类型 rg_list_item ...
- SqlServer_游标循环
--从游标取的值 ) ) --获取待返现数据,并循环处理 DECLARE TestCursor CURSOR FOR SELECT ID,UserName FROM dbo.UserInfo Open ...