UML中关联关系和依赖关系的区别(转)
UML中关联(association)关系和依赖关系比较难以让人理解。今天查了一下《UML参考手册》。归纳如下
关联(association)
如果几个类元的实例之间有联系,那么这几个类元之间的语义关系即关联。关联描述了系统中对象或实例之间的离散连接。关联将一个含有两个或多个有序表的类元,在允许复制的情况下连接起来。最普通的关联是一对类元之间的二元关联。关联的实例之一是链。每个链由一组对象(一个有序列表)构成,每个对象来自于相应的类。二元链包含一对对象。<?XML:NAMESPACE PREFIX = O />
关联带有系统中各个对象之间关系的信息。当系统执行时,对象之间的连接被建立和销毁。关联关系是整个系统中使用的“胶粘剂”,如果没有它,那么只剩下不能一起工作的孤立的类。
在关联中如果同一个类出现不止一次,那么一个单独的对象就可以与自己关联。如果同一个类在一个关联中出现两次,那么两个实例就不必是同一个对象,通常的情况都如此。
二元关联用一条连接两个类的连线表示。
聚集表示部分与整体关系的关联,它用端点带有空菱形的线段表示,空菱形与聚集类相连接。组成是更强形式的关联,整体有管理部分的特有的职责,它用一个实菱形物附在组成端表示。每个表示部分的类与表示整体的类之间有单独的关联,但是为了方便起见,连线结合在一起,现在整组关联就像一棵树。
依赖(dependency)
两个元素之间的一种关系,其中一个元素(服务者)的变化将影响另一个元素(客户),或向它(客户) 提供所需信息。它是一种组成不同模型关系的简便方法。
依赖表示两个或多个模型元素之间语义上的关系。它只将模型元素本身连接起来而不需要用一组实例来表达它的意思。它表示了这样一种情形,提供者的某些变化会要求或指示依赖关系中客户的变化。
根据这个定义,关联和泛化都是依赖关系,但是它们有更特别的语义,故它们有自己的名字和详细的语义。我们通常用依赖这个词来指其他的关系。
依赖用一个从客户指向提供者的虚箭头表示,用一个构造型的关键字来区分它的种类
转载于:https://www.cnblogs.com/wj110reg/articles/863951.html
UML中关联关系和依赖关系的区别(转)相关推荐
- UML中关联关系和依赖关系的区别
UML中关联(association)关系和依赖关系比较难以让人理解.今天查了一下<UML参考手册>.归纳如下 关联(association) 如果几个类元的实例之间有联系,那么这几个类元 ...
- 关联关系和依赖关系的区别
关联关系:A类实例化的时候需要B类的对象引用或指针作为参数 依赖关系:A类的某个方法使用B类,可能是方法的参数是B类或在方法中获得了一个B类的实例 某个类以成员变量的形式出现在另一个类中,二者是关联关 ...
- 关联关系与依赖关系的区别
一.语义上: 关联关系: A has a(knows a) B 依赖关系: A uses a B 二.代码上: 关联关系: package facade; /** * @author Administ ...
- UML中几种类间关系:继承、实现、依赖、关联、聚合、组合的联系与区别
zz from: http://dev.firnow.com/course/3_program/java/javajs/20090219/155939.html UML中几种类间关系:继承.实现.依赖 ...
- 关联关系和依赖关系的思考
关联关系和依赖关系的思考 从宏观上看类与类之间的关系有关联,依赖,泛化和实现. 这其中泛化和实现很好理解,关联和依赖之间的关系不好理解. 下面详细说一下这几个的意思: 1.泛化 泛化:表示类与类之间的 ...
- 如何在SQL Server中创建SQL依赖关系图
Deleting or changing objects may affect other database objects like views or procedures that depends ...
- UML中几种类间关系:继承、实现、依赖、关联、聚合、组合的联系与区别 - 老唐 的专栏 -... (转载)
这是一堂关于UML基础知识的补习课:现在我们做项目时间都太紧了,基本上都没有做过真正的class级别的详细设计,更别提使用UML来实现规范建模了:本篇主要就以前自己一直感觉很迷糊的几种class之间的 ...
- UML中的6大关系(关联、依赖、聚合、组合、泛化、实现)
UML定义的关系主要有六种:依赖.类属.关联.实现.聚合和组合.这些类间关系的理解和使用是掌握和应用UML的关键,而也就是这几种关系,往往会让初学者迷惑.这里给出这六种主要UML关系的说明和类图描述, ...
- [转] UML中关联、依赖、聚集等关系的异同
1. 关联:连接模型元素及链接实例,用一条实线来表示: 2. 依赖:表示一个元素以某种方式依赖于另一个元素,用一条虚线加箭头来表示: 3. 聚集:表示整体与部分的关系,用一条实线加空心菱形来表示 ...
最新文章
- Jmeter连接MySQL数据库
- python 天气预报 mysql_Python+PyQt5+MySQL实现天气管理系统
- AUTOSAR从入门到精通100讲(三十三)-AutoSar架构中的诊断事件管理
- Shell脚本中循环语句for,while,until用法
- vue重复路由_解决vue路由name同名,路由重复的问题
- linux上数据库导入与导出(mysql)
- Apache优化配置
- 淘宝生成器在线制作,淘宝全屏代码装修店招导航教程
- 计算机地图制图的点状符号制作,计算机地图制图地图符号库系统建立..doc
- 【Cmake】Ctest测试工具
- Linux shell脚本文件的各种执行方式
- Oracle 12c PDB数据库的基本操作积累
- Word分栏出现空白怎么解决
- 概率论学习三、古典概型
- GNSS中DCB的使用
- 教你用Python语音合成,以及文字转语音~
- 动手学深度学习笔记4——微积分自动微分
- nvl2与nvl使用区别
- 矛盾依旧脱欧协议过关难 欧盟认为英将延后脱欧
- XZ_Python3之使用Python批量打企业ipa包遇到的问题和解决
热门文章
- php 计算几分钟_几天前 _几月前 几年前,php计算几分钟前、几小时前、几天前的几个函数...
- ubuntu下打开matlab_ubuntu终端命令启动matlab方法
- ud分区删除工具_如何用DiskGenius对硬盘进行分区
- python最流行的框架_2020年最流行Python web开发框架(下)
- dubbo分布式事务解决方案_spring boot 分布式事务解决方案
- 计算机基础知识第四章测试,计算机基础知识测试题第四章
- 【PAT (Advanced Level) Practice】1086 Tree Traversals Again (25 分)
- 【Swing编写图形用户界面】操作系统之磁盘调度算法图形界面和性能比较
- 【Deep Learning笔记】常用的激活函数
- 01背包【动态规划】