UML对象和类之间的相互关系总结
2009-03-16 11:35
309 查看
UML中描述对象和类之间相互关系的方式包括:
依赖(Dependency)
关联(Association)
聚合(Aggregation)
组合(Composition)
泛化(Generalization)
实现(Realization)
等。
依赖 (Dependency):元素A的变化会影响元素B,但反之不成立,那么B和A的关系是依赖关系,B依赖A;类属关系和实现关系在语义上讲也是依赖关系,但由于其有更特殊的用途,所以被单独描述。UML中用带箭头的虚线表示Dependency关系,箭头指向被依赖元素。
关联(Association):元素间的结构化关系,是一种弱关系,被关联的元素间通常可以被独立的考虑。UML中用实线表示Association关系,箭头指向被依赖元素。
聚合(Aggregation):关联关系的一种特例,表示部分和整体的关系。UML中用带空心菱形头的实线表示Aggregation关系,菱形头指向整体。
聚合是关联的一种形式,代表两个类之间的整体/局部关系。聚合暗示着整体在概念上处于比局部更高的一个级别,而关联暗示两个类在概念上位于相同的级别。关联和聚合的区别纯粹是概念上的,而且严格反映在语义上。聚合还暗示着实例图中不存在回路。换言之,只能是一种单向关系。
组 合(Composition):组合是聚合关系的变种,表示元素间更强的组合关系。如果是组合关系,如果整体被破坏则个体一定会被破坏,而聚合的个体则可 能是被多个整体所共享的,不一定会随着某个整体的破坏而被破坏。UML中用带实心菱形头的实线表示Composition关系,菱形头指向整体。
泛化(Generalization):通常所说的继承关系,UML中用带空心箭头的实线线表示Generalization关系,箭头指向一般个体。
实现(Realize):元素A定义一个约定,元素B实现这个约定,则B和A的关系是Realize,B realize A。这个关系最常用于接口。UML中用空心箭头和虚线表示Realize关系,箭头指向定义约定的元素。
其中依赖(Dependency)的关系最弱,而关联(Association),聚合
(Aggregation),组合(Composition)表示的关系依次增强。换言之关联,聚合,组合都是依赖关系的一种,聚合是表明对象之间的整体
与部分关系的关联,而组合是表明整体与部分之间有相同生命周期关系的聚合。
而关联与依赖的关系用一句话概括下来就是,依赖描述了对象之间的调用关系,而关联描述了对象之间的结构关系。
依赖(Dependency)
关联(Association)
聚合(Aggregation)
组合(Composition)
泛化(Generalization)
实现(Realization)
等。
依赖 (Dependency):元素A的变化会影响元素B,但反之不成立,那么B和A的关系是依赖关系,B依赖A;类属关系和实现关系在语义上讲也是依赖关系,但由于其有更特殊的用途,所以被单独描述。UML中用带箭头的虚线表示Dependency关系,箭头指向被依赖元素。
关联(Association):元素间的结构化关系,是一种弱关系,被关联的元素间通常可以被独立的考虑。UML中用实线表示Association关系,箭头指向被依赖元素。
聚合(Aggregation):关联关系的一种特例,表示部分和整体的关系。UML中用带空心菱形头的实线表示Aggregation关系,菱形头指向整体。
聚合是关联的一种形式,代表两个类之间的整体/局部关系。聚合暗示着整体在概念上处于比局部更高的一个级别,而关联暗示两个类在概念上位于相同的级别。关联和聚合的区别纯粹是概念上的,而且严格反映在语义上。聚合还暗示着实例图中不存在回路。换言之,只能是一种单向关系。
组 合(Composition):组合是聚合关系的变种,表示元素间更强的组合关系。如果是组合关系,如果整体被破坏则个体一定会被破坏,而聚合的个体则可 能是被多个整体所共享的,不一定会随着某个整体的破坏而被破坏。UML中用带实心菱形头的实线表示Composition关系,菱形头指向整体。
泛化(Generalization):通常所说的继承关系,UML中用带空心箭头的实线线表示Generalization关系,箭头指向一般个体。
实现(Realize):元素A定义一个约定,元素B实现这个约定,则B和A的关系是Realize,B realize A。这个关系最常用于接口。UML中用空心箭头和虚线表示Realize关系,箭头指向定义约定的元素。
其中依赖(Dependency)的关系最弱,而关联(Association),聚合
(Aggregation),组合(Composition)表示的关系依次增强。换言之关联,聚合,组合都是依赖关系的一种,聚合是表明对象之间的整体
与部分关系的关联,而组合是表明整体与部分之间有相同生命周期关系的聚合。
而关联与依赖的关系用一句话概括下来就是,依赖描述了对象之间的调用关系,而关联描述了对象之间的结构关系。
相关文章推荐
- UML:UMLl类图符号 对象与类之间相互关系的类型包括:依赖、关联、聚合、组合、泛华、实现等。
- UML描述对象和类之间的相互关系
- 面向对象的基本概念(二)--UML.类之间的关系
- 模块化C代码与UML对象模型之间的映射(3)——UML关系
- 模块化C代码与UML对象模型之间的映射(3)——UML关系
- 面向对象的基本概念(二)--UML.类之间的关系
- UML对象关系学习总结
- 面向对象的基本概念(二)--UML.类之间的关系
- UML各个组成和相互之间的关系
- 对象导论以及对象之间的几种关系的总结
- jackson的使用总结 jason对象xml list之间相互转换
- 十:类型、对象、线程堆栈、托管堆栈之间运行时的相互关系(二)
- 面向对象之继承(类与类之间的关系)
- 从零开始学C++之RTTI、dynamic_cast、typeid、类与类之间的关系uml
- 关于gcc、glibc和binutils模块之间的关系,以及在现有系统上如何升级的总结
- 对象和方法之间的关系
- 弥合对象/关系之间的鸿沟(三)—— 阻抗不匹配?
- 二.OC基础--1,对象的存储细节,2,#pragma mark指令,3,函数和对象方法的区别,4,对象和方法之间的关系 ,5.课堂习题
- json字符串和json对象之间相互转化
- Sql2012如何将远程服务器数据库及表、表结构、表数据导入本地数据库 自定义日志记录功能,按日记录,很方便 C#常量和字段以及各种方法的语法总结 类型,对象,线程栈,托管堆在运行时的关系,以及clr如何调用静态方法,实例方法,和虚方法 asp.net webapi 自定义身份验证