01_描述对象_类图(Class Diagram)

时间:2021-07-18 16:28:08

1.   作用

  • 用于面向对象软件开发的分析和设计阶段,描述系统的静态结构。
  • 描述类与类、类与接口、接口与接口之间的静态结构和关系,描述系统的结构化设计。最基本的元素:类、接口。
  • 用于应用程序的一般概念建模、详细建模、数据建模,将模型转换成编程代码。
  • 类图是系统编码和测试的重要模型依据。

2.   元素

  • 包(package)
  • 类(class)
  • 接口(interface)
  • 关系(relation)
  • 信号(signal)
  • 数据类型(data type)
  • 原始类型(primitive type)
  • 枚举(enumeration)

01_描述对象_类图(Class Diagram)

3.   范围属性

  • +:public
  • #:protected
  • -:private
  • ~:package

4.   关系

4.1 关联(association)

拥有关系,拥有者能知道被拥有者的属性和方法。被拥有者是拥有者的属性。关联分单向关联(unidirectional association)和双向关联(bidirectional association)。

01_描述对象_类图(Class Diagram)

荔枝:

01_描述对象_类图(Class Diagram)

4.2 依赖(dependency)

使用关系。使用者需要被使用者的部分属性和方法。

01_描述对象_类图(Class Diagram)

荔枝:

01_描述对象_类图(Class Diagram)

4.3 泛化(generalization)

继承关系。使继承者(子类)拥有被继承者(父类)的属性和方法。

01_描述对象_类图(Class Diagram)

荔枝:

01_描述对象_类图(Class Diagram)

4.4 聚合(aggregation)

描述整体与部分的关系,部分离开整体可以独立存在。

01_描述对象_类图(Class Diagram)

荔枝:

01_描述对象_类图(Class Diagram)

4.4 组合(composition)

描述整体与部分的关系,部分不能离开整体独立存在。

01_描述对象_类图(Class Diagram)

荔枝:

01_描述对象_类图(Class Diagram)

4.5 实现(realization)

类的方法体现接口的行为。

01_描述对象_类图(Class Diagram)

荔枝:

01_描述对象_类图(Class Diagram)

5.   Robustness(拓展)

边界(boundary)

实体(entity)

控制(control)

01_描述对象_类图(Class Diagram)

6.   大荔枝

01_描述对象_类图(Class Diagram)