返回

类图:UML 中的静态结构表示

Android

简介

统一建模语言 (UML) 是一种强大的建模语言,用于可视化和设计软件系统。类图是 UML 中一种重要的图类型,用于表示系统中类的静态结构。类图提供了对系统中对象的类型、它们之间的关系以及它们属性和方法的清晰理解。

类图元素

类图主要包含以下元素:

  • 类: 表示系统中的实体或概念。它们由一个矩形表示,其中包含类的名称、属性和方法。
  • 属性: 类的特征。它们以一个名称和一个类型表示,以斜体书写。
  • 方法: 类的行为。它们以一个名称和一个参数列表表示,用括号括起来。
  • 关系: 连接类并表示它们之间的交互。UML 中常用的关系有泛化、实现、关联、聚合和组合。

类图关系

泛化(Generalization)

泛化表示一个类(子类)从另一个类(父类)继承属性和行为。它通过一条带三角形箭头的线表示,指向父类。

实现(Realization)

实现表示一个类(实现类)实现了另一个类(接口)中定义的接口。它通过一条带虚线三角形箭头的线表示,指向接口。

关联(Association)

关联表示两个类之间的一种连接。它通过一条带有角色名称的线表示,连接两个类。关联可以是双向的(双方都有角色名称)或单向的(只有一方有角色名称)。

聚合(Aggregation)

聚合表示一个类(部分)属于另一个类(整体)的一部分。它通过一条带有空心菱形的线表示,指向整体类。部分可以独立于整体存在。

组合(Composition)

组合表示一个类(部分)是另一个类(整体)的一部分。它通过一条带有实心菱形的线表示,指向整体类。部分不能独立于整体存在。

类图示例

让我们以一个简单的动物类图为例:

Animal
  - name: string
  - age: int
  + eat(): void
  + sleep(): void
Dog extends Animal
  + bark(): void
  + chase(): void
Cat extends Animal
  + meow(): void
  + purr(): void
PetStore
  - animals: List<Animal>
  + addAnimal(animal: Animal): void
  + removeAnimal(animal: Animal): void

这个类图表示:

  • Animal 类是动物类的超类,具有 nameage 属性,以及 eat()sleep() 方法。
  • Dog 类是 Animal 的子类,代表狗,并添加了 bark()chase() 方法。
  • Cat 类是 Animal 的子类,代表猫,并添加了 meow()purr() 方法。
  • PetStore 类表示一个宠物商店,具有 animals 属性,该属性是 Animal 对象的列表。

结论

类图是 UML 中一种重要的图类型,用于表示系统的静态结构。它们提供了对系统中对象的类型、它们之间的关系以及它们属性和方法的清晰理解。通过使用类图,软件架构师和设计师可以创建精确且可维护的设计,以构建健壮且可扩展的系统。