UML类和类之间的关系可以有多种吗
答案:2 悬赏:60 手机版
解决时间 2021-01-15 18:39
- 提问者网友:聂風
- 2021-01-15 06:00
UML类和类之间的关系可以有多种吗
最佳答案
- 五星知识达人网友:廢物販賣機
- 2021-01-15 07:03
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对象之间的调用关系,而关联描述了对象之间的结构关系。追问我觉得应该是不可以的,试想一下,如果你填了关联关系,你还可以填组合关系吗?那么他到底是什么关系,最终肯定会确定一个关系的
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楼网友:酒者煙囻
- 2021-01-15 07:14
可以,泛化依赖关联组合聚合追问我觉得应该是不可以的,试想一下,如果你填了关联关系,你还可以填组合关系吗?那么他到底是什么关系,最终肯定会确定一个关系的
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯