解密UML九中关系

2024-05-25 11:18
文章标签 解密 关系 uml 九中

本文主要是介绍解密UML九中关系,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  将UML中常用的九种关系分为了四组进行解释。




一、组合和聚合讲解:

相同:均是指有部分组成整体。

不同:聚合是指可以独立存在的个体组成整体。(弱的拥有关系)

      组合存在时间上的关系。整体和部分具有相同的生命周期。且部分本就是整体的       一部分。(强拥有关系)

比如:书架和书及书页之间关系。

      书是书架的一部分,但是书可以离开书架单独存在。这种关系是组合

      很多的书页可以组成一本书,但是书是不能离开书页单独存在的,且书和书页是       同时存在的。这就是组合关系。


二、包含和扩展讲解:

  两者存在于用例图中,指的是用例之间的关系。

包含:是用来描述将一个基用例中过于复杂的功能用例。来分解成多个新的用例。

      且这些新的用例不可缺少。

扩展:是将基用例中的相对独立且可选的用例与基用例之间的描述。

如:机房收费系统中的:用户上机记录查看,包含了查询、查看、退出、导出  Excel表等功能。若将上机记录查看作为一个用例那么这些功能均要在此用例中描    述。过于复杂。那么可以将这些功能分解成子用例。


    因为查询、查看、退出,是被包含在上机记录查看不可缺少的功能,这三个功能是无条件存在的,将上机记录查看描述的更完整。

    而导出为Excel表是在查询出现结果之后,对于上机记录查看这个功能,能不能导出Excel表都是一样的。

 

三、继承和泛化:

泛化其实也是一种继承关系。

不同的是泛化关联箭头从子类指向父类的 与继承相反。



             是泛化关系

四、关联和依赖的认识:

依赖是比关联弱的关系,关联其实是一种较强的依赖关系。

     依赖是指两个独立的系统之间的关系,一个系统负责构造另一个系统实例,或依赖于另一个系统服务时存在的。比如:但机器负责生产零件时,机器构造的零件实体;打气筒为自行车提供打气服务也是一种依赖关系。


关联是只特定的对象实例之间存在较长期的固定关系。

依赖是指两个对象之间存在短时间的关系。


如用人、自行车、打气筒三者之间的关系来描述。

人和自行车是特定的配对,且在很长的时间中人均可以骑自行车。

但是,自行车和打气筒之间不存在配对关系,你可能在路上用这个打气筒一次,有用另外各一次,且每次使用时间较短。



五、实现关系;

两个实体与接口之间的关系。


总的来说这几种关系的强弱是:泛华=实现>组合>聚合>关联>依赖
在使用关系时一定要使用最准确的关系进行描述。

这篇关于解密UML九中关系的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1001348

相关文章

Java中使用Hutool进行AES加密解密的方法举例

《Java中使用Hutool进行AES加密解密的方法举例》AES是一种对称加密,所谓对称加密就是加密与解密使用的秘钥是一个,下面:本文主要介绍Java中使用Hutool进行AES加密解密的相关资料... 目录前言一、Hutool简介与引入1.1 Hutool简介1.2 引入Hutool二、AES加密解密基础

Tomcat版本与Java版本的关系及说明

《Tomcat版本与Java版本的关系及说明》:本文主要介绍Tomcat版本与Java版本的关系及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat版本与Java版本的关系Tomcat历史版本对应的Java版本Tomcat支持哪些版本的pythonJ

python安装whl包并解决依赖关系的实现

《python安装whl包并解决依赖关系的实现》本文主要介绍了python安装whl包并解决依赖关系的实现,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录一、什么是whl文件?二、我们为什么需要使用whl文件来安装python库?三、我们应该去哪儿下

MYSQL关联关系查询方式

《MYSQL关联关系查询方式》文章详细介绍了MySQL中如何使用内连接和左外连接进行表的关联查询,并展示了如何选择列和使用别名,文章还提供了一些关于查询优化的建议,并鼓励读者参考和支持脚本之家... 目录mysql关联关系查询关联关系查询这个查询做了以下几件事MySQL自关联查询总结MYSQL关联关系查询

POJ1269 判断2条直线的位置关系

题目大意:给两个点能够确定一条直线,题目给出两条直线(由4个点确定),要求判断出这两条直线的关系:平行,同线,相交。如果相交还要求出交点坐标。 解题思路: 先判断两条直线p1p2, q1q2是否共线, 如果不是,再判断 直线 是否平行, 如果还不是, 则两直线相交。  判断共线:  p1p2q1 共线 且 p1p2q2 共线 ,共线用叉乘为 0  来判断,  判断 平行:  p1p

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip

Java 后端接口入参 - 联合前端VUE 使用AES完成入参出参加密解密

加密效果: 解密后的数据就是正常数据: 后端:使用的是spring-cloud框架,在gateway模块进行操作 <dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>30.0-jre</version></dependency> 编写一个AES加密

UML- 统一建模语言(Unified Modeling Language)创建项目的序列图及类图

陈科肇 ============= 1.主要模型 在UML系统开发中有三个主要的模型: 功能模型:从用户的角度展示系统的功能,包括用例图。 对象模型:采用对象、属性、操作、关联等概念展示系统的结构和基础,包括类图、对象图、包图。 动态模型:展现系统的内部行为。 包括序列图、活动图、状态图。 因为要创建个人空间项目并不是一个很大的项目,我这里只须关注两种图的创建就可以了,而在开始创建UML图

读软件设计的要素04概念的关系

1. 概念的关系 1.1. 概念是独立的,彼此间无须相互依赖 1.1.1. 一个概念是应该独立地被理解、设计和实现的 1.1.2. 独立性是概念的简单性和可重用性的关键 1.2. 软件存在依赖性 1.2.1. 不是说一个概念需要依赖另一个概念才能正确运行 1.2.2. 只有当一个概念存在时,包含另一个概念才有意义 1.3. 概念依赖关系图简要概括了软件的概念和概念存在的理

数据依赖基础入门:函数依赖与数据库设计的关系

在数据库设计中,数据依赖 是一个重要的概念,它直接影响到数据库的结构和性能。函数依赖 作为数据依赖的一种,是规范化理论的基础,对数据库设计起着至关重要的作用。如果你是一名数据库设计的初学者,这篇文章将帮助你理解函数依赖及其在数据库设计中的应用。 什么是数据依赖? 数据依赖 是指同一关系中属性间的相互依赖和制约关系,它是数据库设计中语义的体现。在现实世界中,数据之间往往存在某种依赖关系,而这