UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)

摘要:
在UML类图中,以下关系是常见的:概括、实现、关联、聚合、组合和依赖关系理解。这些类图在阅读第三方框架时起着非常重要的作用。聚合关系是一种关联关系,是一种强关联关系;关联和聚合在语法上无法区分,必须考虑特定的逻辑关系。复合关系是一种关联关系,强于聚合关系。它要求在公共聚合关系中表示整体的对象负责表示某些对象的生命周期。

在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)

理解这些类图对于我们阅读第三方框架的时候有这非常大的作用。

强弱顺序:泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖

1、泛化(Generalization)

  【泛化关系】:一种继承关系,类与类之间的继承,接口与接口之间的继承。一般与特殊的关系,它指定了子类如何特殊化父类所有的特征和行为。

  【箭头指向】:带三角箭头的实线,箭头指向父类。

UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)第1张

  

2、实现(Realization)

  【泛化关系】:一种实现关系,表示类是接口所有特征和行为的实现。

  【箭头指向】:带三角箭头的虚线,箭头指向接口。

UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)第2张

 

3、关联(Assocation) 

   【关联关系】:是一种拥有的关系,它使一个类知道另一个类的属性和方法;如:老师与学生,丈夫与妻子。关联可以是双向的,也可以是单向的。双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头。

   【代码体现】:成员变量

   【箭头及指向】:带普通箭头的实心线,指向被拥有者

  UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)第3张

4、聚合(Aggregation) 

  【聚合关系】:是整体与部分的关系,且部分可以离开整体而单独存在。如车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在。

         聚合关系是关联关系的一种,是强的关联关系;关联和聚合在语法上无法区分,必须考察具体的逻辑关系。

  【代码体现】:成员变量

  【箭头及指向】:带空心菱形的实心线,菱形指向整体

UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)第4张

4、组合(Composition) | 复合

  【组合关系】:是整体与部分的关系,但部分不能离开整体而单独存在。如公司和部门是整体和部分的关系,没有公司就不存在部门。

                 组合关系是关联关系的一种,是比聚合关系还要强的关系,它要求普通的聚合关系中代表整体的对象负责代表部分对象的生命周期。

  【代码体现】:成员变量

  【箭头及指向】:带实心菱形的实线,菱形指向整体

UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)第5张

5、依赖(Dependency)

  【依赖关系】:是一种使用的关系,即一个类的实现需要另一个类的协助,所以要尽量不使用双向的互相依赖.

  【代码表现】:局部变量、方法的参数或者对静态方法的调用

  【箭头及指向】:带箭头的虚线,指向被使用者

UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)第6张

 

6、总结

盗图:

UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)第7张

 

 

 

 

 

 

 

 

 

 

免责声明:文章转载自《UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇rpmbuild打包报错:Segmentation fault问题解决【原创】大叔经验分享(21)yarn中查看每个应用实时占用的内存和cpu资源下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

ER图与UML图

ER图:实体-联系图(Entity-RelationDiagram)用来建立数据模型,在数据库系统概论中属于概念设计阶段,ER图提供了表示实体(即数据对象)、属性和联系的方法,用来描述现实世界的概念模型 构成E-R图的基本要素是实体、属性和联系,其表示方法为:   实体型:用矩形表示,矩形框内写明实体名;   属性:用椭圆形或圆角矩形表示,并用无向边将其与...

UML各种图总结

UML(Unified Modeling Language)是一种统一建模语言,为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。下面将对UML的九种图+包图的基本概念进行介绍以及各个图的使用场景。 想要知道UML更多内容的朋友,可以点击以下课程学习相关知识:   https://edu.csdn.net/course/play/2475...

IDEA 类图功能使用方法

1. Ctrl+Shift+Alt+U显示类图,(可以选中代码中类,再按快捷键,直接进入此类的类图) 2. 在类图中,选中某类右击显示Show Implementations,弹出子类的选择框。 按Shift可以多选,需要鼠标从窗口之外滑到底部即可全选。 3. 右击layout可以调节展示的布局: 得到如下图片 4. 最后,右击、...

如何:从代码创建 UML 类图(ZZ)

  您拖动的一个或多个类将显示在关系图上。 它们依赖的类将显示在“UML 模型资源管理器”中。 参见 模型表示类型的方式。 将程序代码中的类添加到 UML 模型 打开一个 C# 项目。 将一个 UML 类图。解决方案: 在“体系结构”菜单上,选择“新建关系图”。 在“添加新关系图”对话框中选择“UML 类图”。 如果您还没有,将建模项目创建。 打开...

在eclipse中画类图

学习设计模式的时候,希望能够画出类图,理清关系。但是StarUML还有重新去写类名、属性、方法等,不是很方便。网上给出了安装插件的方法额,就可以直接在eclipse中拖拽类,很方便。但是网上给出的插件地址失效了,现在做出如下整理: 1.安装GEF。eclipse->Help->Install new software GEF的地址是:http...

EA使用教程

一、Enterprise Architect简介 Enterprise Architect是一个对于软件系统开发有着极好支持的CASE软件(Computer Aided Software Engineering)。EA不同于普通的UML画图工具(如VISIO),它将支撑系统开发的全过程。在需求分析阶段,系统分析与设计阶段,系统开发及部署等方面有着强大的支持...