UML对象和类之间的相互关系知多少

开发 架构
使用UML进行建模时经常用到UML对象,你对他是否了解,这里就向大家介绍一下UML对象和类之间的相互关系,相信通过本文的学习你一定会对UML对象和类关系有明确的认识。

在学习UML的过程中,你经常会遇到UML对象和类之间的相互关系方面的问题,这里就和大家分享一下,希望本节的介绍对你的学习有所帮助。下面就让我们一起来看一下UML对象和类相互关系的具体介绍吧。

UML对象和类之间的相互关系总结

UML中描述对象和类之间相互关系的方式包括:

依赖(Dependency)

关联(Association)

聚合(Aggregation)

组合(Composition)

泛化(Generalization)

实现(Realization)

等。

依赖(Dependency):元素A的变化会影响元素B,但反之不成立,那么B和A的关系是依赖关系,B依赖A;类属关系和实现关系在语义上讲也是依赖关系,但由于其有更特殊的用途,所以被单独描述。UML中用带箭头的虚线表示Dependency关系,箭头指向被依赖元素。

关联(Association):元素间的结构化关系,是一种弱关系,被关联的元素间通常可以被独立的考虑。UML中用实线表示Association关系,箭头指向被依赖元素。


聚合(Aggregation):关联关系的一种特例,表示部分和整体的关系。UML中用带空心菱形头的实线表示Aggregation关系,菱形头指向整体。

UML对象和类的聚合关系是关联的一种形式,代表两个类之间的整体/局部关系。聚合暗示着整体在概念上处于比局部更高的一个级别,而关联暗示两个类在概念上位于相同的级别。关联和聚合的区别纯粹是概念上的,而且严格反映在语义上。聚合还暗示着实例图中不存在回路。换言之,只能是一种单向关系。


组合(Composition):组合是聚合关系的变种,表示元素间更强的组合关系。如果是组合关系,如果整体被破坏则个体一定会被破坏,而聚合的个体则可能是被多个整体所共享的,不一定会随着某个整体的破坏而被破坏。UML中用带实心菱形头的实线表示Composition关系,菱形头指向整体。


泛化(Generalization):UML对象和类的泛化关系就是通常所说的继承关系,UML中用带空心箭头的实线线表示Generalization关系,箭头指向一般个体。


实现(Realize):元素A定义一个约定,元素B实现这个约定,则B和A的关系是Realize,BrealizeA。这个关系最常用于接口。UML中用空心箭头和虚线表示Realize关系,箭头指向定义约定的元素。

其中依赖(Dependency)的关系最弱,而关联(Association),聚合(Aggregation),组合(Composition)表示的关系依次增强。换言之关联,聚合,组合都是依赖关系的一种,聚合是表明对象之间的整体与部分关系的关联,而组合是表明整体与部分之间有相同生命周期关系的聚合。

而关联与依赖的关系用一句话概括下来就是,依赖描述了UML对象之间的调用关系,而关联描述了对象之间的结构关系。

【编辑推荐】

  1. 三大UML对象关系解析
  2. UML对象图和类图关系解析
  3. 实例讲解UML对象图使用
  4. UML建模过程中需要注意要点专家提醒
  5. UML对象关系学习总结

 

责任编辑:佚名 来源: csdn.net
相关推荐

2010-06-11 18:09:26

UML对象图

2010-04-26 10:32:55

Oracle 10g

2011-12-27 09:39:12

C#运行时

2021-07-22 07:20:24

JS 遍历方法前端

2010-07-09 10:26:35

UML类图关系

2010-07-09 15:29:51

UML类关系

2010-07-08 15:28:39

UML类图依赖关系

2010-07-02 12:53:07

UML对象图

2010-06-29 13:11:40

UML类图依赖关系

2010-06-30 15:40:08

2010-07-12 11:23:09

UML类图

2010-07-12 10:25:44

UML类图

2010-06-17 18:57:11

UML对象关系

2023-12-18 10:41:28

深度学习NumPyPyTorch

2010-06-12 18:30:57

UML类图关系

2010-06-17 18:47:18

UML对象关系

2009-07-20 13:27:01

UML对象关系

2010-06-28 16:54:49

UML类图关系

2010-06-18 14:43:28

UML关系图

2010-07-01 11:33:17

UML类图关系
点赞
收藏

51CTO技术栈公众号