UML类之间的关系

595 阅读1分钟

类之间的关系

  • 泛泛化和实现
  • 依赖
  • 聚合、组合和关联

泛化和实现

泛化

在UML术语中用泛化来描述继承关系。当一个类表示多个类的共享特征时,这个类被称为一个泛化。用如下方式表示:空心三角形+实线

泛化

实现

在UML中实现用来表示面向对象程序设计中的接口实现,表示为:空心三角形+虚线

实现

依赖关系

依赖是程序中最常见的一种关系,通常表现为一个类的方法使用另一个类的对象作为参数,而不是在方法内创建另一个类的对象,可以称为是Use-A的关系,表示如下:虚线箭头

关联关系

通常关联由实线箭头表示,如下:

有两种类型的关联:

  1. 聚合:聚合是一种特殊类型的关联,可以将聚合视为has-A的关系。用来描述一个类逻辑上包含另一个类的关系,但是被包含的类的实例又能独立于第一个类的上下文之外生存。(两个类都是一般的类,只是逻辑上一个类拥有另一个类的实例作为自己的域)
  2. 组合:组合不同于聚合的地方主要是,两个类之间的关系更加紧密,不单单只是逻辑上的包含关系,而且被组合的类实际上是不能独立存在的,当主类不存在时被依赖的类也不再存在。例如手和手指的关系,房子和房间的关系

聚合

空心菱形+实线

组合

实心菱形+实线