UML——六大关系整理
UML——六大关系整理
1、定义
是一种面向对象的建模语言,它是运用统一的、标准化的标记和定义实现对软件系统进行面向对象的描述和建模(百度百科)。
2、六种关系
这六种关系分别为,继承、实现、关联、聚合、组合、依赖。
3、继承(继承是否可以叫泛化?):
表示一般与特殊的关系,通过继承,可以把父类的特性或方法拿过来,而它自身可以扩展其它的特性和方法等等。C#用
冒号表示继承,java用extend关键字表示继承。
例如:猫是动物的一种,即有猫的特性也有动物的共性,Cat:Animal;Cat extend Animal。
UML表示如下:
4、实现:
这是一种接口和类之间的关系,类实现接口中的特征和行为。例如:类C实现了接口Interface1
UML表示如下:
5、关联:
一种强依赖关系,关联就是某个对象会长期的持有另一个对象的引用,而二者的关联往往也是相互的。关联的两个对象
彼此间没有任何强制性的约束,
只要二者同意,可以随时解除关系或是进行关联,它们在生命期问题上没有任何约定。被关联的对象还可以再被别的对
象关联,所以关联是可以共享的(51cto)。例如:ClassA2关联着ClassB2,自身关联ClassA5
UML表示如下:
6、依赖:
依赖指的是一个类依赖另一个类的方法或属性,例如:人要写字,就必须借助比的写的功能。
依赖就是某个对象的功能依赖于另外的某个对象,而被依赖的对象只是作为一种工具在使用,
而并不持有对它的引用(51CTO)。
UML表示如下:
7、聚合:
聚合是关联的一种形式,代表两个类之间的整体/局部关系。聚合暗示着整体在概念上处于比局
部更高的一个级别,而关联暗示两个类在概念上位于相同的级别。
UML关系图中的聚合是强版本的关联。它暗含着一种所属关系以及生命期关系。被聚合的对象
还可以再被别的对象关联,所以被聚合对象是可以共享的。虽然是共享的,聚合代表的是一种更亲密的关系(51CTO)。
释义:书和纸之间具有着一种强烈的所属关系,书是可以分享的,这正如纸和书里的文字都对这本书有着同样的强烈关联。
UML表示如下:
8、组合:
UML关系图中的组合是关系当中的最强版本,它直接要求包含对象对被包含对象的拥有以及包含对象
与被包含对象生命期的关系。被包含的对象还可以再被别的对象关联,
所以被包含对象是可以共享的,然而绝不存在两个包含对象对同一个被包含对象的共享(51CTO)。
UML表示如下:
UML——六大关系整理的更多相关文章
- 软件设计之UML—UML中的六大关系
一.UML中的六大关系 在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation), ...
- 设计模式之UML类图六大关系辨析【2】
六大关系:继承(extends).实现(Realization).依赖(use-a).关联(association).聚合(has-a).组合(强聚合)(Composition). 类与类之间的强弱关 ...
- [转] UML中的六大关系
UML中的六大关系 转自:https://www.cnblogs.com/hoojo/p/uml_design.html 在UML类图中,常见的有以下几种关系: 泛化(Generalization), ...
- UML类图介绍&类的六大关系
UML类图介绍&类的六大关系 官方定义 UML(统一建模语言),是一种用于软件系统分析和设计的语言工具,用于帮助软件开发人员进行思考和记录思路的方式 UML 图形化的语言 基本介绍 UML图: ...
- 通过简单例子 | 快速理清 UML 中类与类的六大关系
关于封面:我想我们都会离开 类与类之间的六大关系 泛化 ( Generalization ) ---> 表继承关系 实现 ( Realization ) 关联 ( Association ) 聚 ...
- UML学习归纳整理
转载自:https://www.jianshu.com/p/83afa19c5096 写在前面 之前在学校比较系统的学习过统一建模语言UML,但长时间没使用遗忘了许多,最近因工作需要,所以对UML重新 ...
- 【建模】UML类关系分析
一.UML类关系分析 1.关联(asociation) 一般是一方拥有另一方对象的指针.箭头的方向是访问方向. 2.聚合(Aggregation)和组合(Composition) 聚合和关联一般不做区 ...
- UML六种关系
UML六种关系 基础之上,并对其进行了扩展.在程序中是通过继承类实现的.比如狗是对动物的具体描述,在面向对象设计的时候一般把狗设计为动物的子类. 表示方法:空心三角形箭头的实线,子类指向父类 实现 概 ...
- 单元测试系列之八:Sonar 数据库表关系整理一(续)
更多原创测试技术文章同步更新到微信公众号 :三国测,敬请扫码关注个人的微信号,感谢! 简介:Sonar平台是目前较为流行的静态代码扫描平台,为了便于使用以及自己二次开发,有必要对它的数据库结构进行学习 ...
随机推荐
- HTTP的瓶颈
http协议,1.0或1.1版本,一个连接智能发送一个请求,通信都是基于请求/响应方式的,请求只能从客户端发起(半双工),发送冗长的首部. 在交互比较频繁的社交网站等,一直轮训带来的网络及服务器压力是 ...
- nodejs vinyl-fs 处理文件时输入问题
使用 nodejs vinyl-fs 复制文件时输出路径不对,还是会有原来的相对路径,原因是用了反斜杠“\”,正斜杠“/”没问题 测试过程 node版本: v9.3.0 系统:win10 步骤: 得到 ...
- asp.net—执行分页存储过程的函数
分页存储过程的T—SQL在之前的文章中已经跟大家分享过了 现在就对应 分页存储过程 跟大家分享下在.net中执行的函数. 该文章是希望给予新手一些编程过程中的帮助(大神可以帮忙指出代码中的不妥之处) ...
- sqlserver学习
清空数据表: delete from TableName 清除表中的所有的数据,保留表的结构 truncate table TableName 清除表中所有行,保留表结构 (重置ID) 删除表 Dr ...
- git install
wget -O git-master.zip https://codeload.github.com/git/git/zip/master unzip git-master.zip cd git-ma ...
- Bootstrap框架(一)
day57 参考:https://www.cnblogs.com/liwenzhou/p/8214637.html 下载:http://www.bootcss.com/ 选择用于生产环境的 Boo ...
- storm配置详解
storm的配置文件在${STORM_HOME}/conf/storm.yaml.下面详细说明storm的配置信息. java.libary.path:storm本身依赖包的路径,有多个路径的时候使用 ...
- C# 后缀名
用Visual Studio进行开发时项目内会有很多文件,其中常见的文件名后缀及其功能如下: .sln:解决方案文件,为解决方案资源管理器提供显示管理文件的图形接口所需的信息. .csproj:项目文 ...
- 中国云运营商横向对比——IaaS服务对标
前言: 随着互联网行业的快速发展,云服务器的使用越来越普遍.中国的云服务器提供商数量也在增加,市场上有大大小小多家云服务器提供商.然而,为了在众多服务提供商中脱颖而出,国内云服务器运营商商也在不断的利 ...
- 读/写锁的实现和应用(高并发状态下的map实现)
程序中涉及到对一些共享资源的读和写操作,且写操作没有读操作那么频繁.在没有写操作的时候,两个线程同时读一个资源没有任何问题,所以应该允许多个线程能在同时读取共享资源.但是如果有一个线程想去写这些共享资 ...