UML类图中的几种关系

2人阅读 评论(0) 收藏 举报
分类:

UML类图几种关系的总结
 
来源:C博客 发布于 2016-9-6

 

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

1. 泛化(Generalization)

【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为。例如:老虎是动物的一种,即有老虎的特性也有动物的共性。

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

2. 实现(Realization)

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

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

3. 关联(Association)

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

【代码体现】:成员变量

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

上图中,老师与学生是双向关联,老师有多名学生,学生也可能有多名老师。但学生与某课程间的关系为单向关联,一名学生可能要上多门课程,课程是个抽象的东西他不拥有学生。

下图为自身关联:

4. 聚合(Aggregation)

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

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

【代码体现】:成员变量

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

5. 组合(Composition)

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

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

【代码体现】:成员变量

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

6. 依赖(Dependency)

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

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

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

各种关系的强弱顺序:

泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖

下面这张UML图,比较形象地展示了各种类图关系:


查看评论

UML类图中常见的几种关系

UML类图中常见的几种关系:泛化、实现、关联、聚合、组合、依赖1,泛化泛化:定义了一般与特殊之间的关系代码体现:一种继承关系,指定了子类如何特化父类的所有特征和行为。比如老虎是动物的一种,老虎既有自己...
  • lixg88888888
  • lixg88888888
  • 2018-01-02 15:30:16
  • 41

UML类图几种常见的关系

在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composit...
  • WAN_EXE
  • WAN_EXE
  • 2016-12-02 17:14:13
  • 189

UML类图几种关系的总结

  • 2013年03月14日 15:33
  • 109KB
  • 下载

UML类图六大关系总结

在UML类图中,常见的有以下几种关系: 泛化(Generalization) 实现(Realization) 关联(Association) 聚合(Aggregation) 组合(Compositio...
  • u014717036
  • u014717036
  • 2016-08-01 21:00:54
  • 804

UML类图中常见的几种关系:泛化、 实现、关联、聚合与组合

在UML类图中,常见的有以下几种关系:泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Compositi...
  • shenlei19911210
  • shenlei19911210
  • 2015-09-02 13:21:35
  • 1194

UML类图几种关系的总结 - OPEN 开发经验库

  • 2015年11月08日 12:10
  • 51KB
  • 下载

【Java】UML类图几种关系的总结

转自:http://blog.csdn.net/tianhai110/article/details/6339565 在UML类图中,常见的有以下几种关系:泛化(Generalizati...
  • sko121
  • sko121
  • 2016-11-01 09:58:02
  • 1943

Uml类图中的几种关系

在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composit...
  • u014315849
  • u014315849
  • 2016-02-29 17:49:37
  • 373

UML类图五种关系的代码实现

初次接触UML的时候,就对比过类图中的几种关系(UML——类图),当时侧重的是对这些关系的通俗理解,忽略了图和代码的对应关系。现在在软考中设计模式也是很重要的一部分,基本考点就是将UML图转化成代码实...
  • yiwangxiblog
  • yiwangxiblog
  • 2016-09-18 20:51:38
  • 1016

UML类图与类的关系详解

  • 2017年10月25日 11:11
  • 195KB
  • 下载
    个人资料
    等级:
    访问量: 94
    积分: 82
    排名: 152万+
    文章分类
    文章存档