OOAD - UML 基本符号

UML 为每个构建块定义了特定的符号。

类由具有三个部分的矩形表示 −

  • 包含类名称的顶部部分
  • 包含类属性的中间部分
  • 底部部分代表类的操作

属性和操作的可见性可以用以下方式表示 −

  • Public − 公共成员在系统中的任何位置都是可见的。 在类图中,它以符号"+"为前缀。

  • Private − 私有成员仅在类内部可见。 无法从类外部访问它。 私有成员以符号"−"为前缀。

  • Protected − 受保护的成员在类内部和从该类继承的子类中可见,但在外部不可见。 它以符号"#"为前缀。

抽象类的类名以斜体书写。

示例 − 让我们考虑一下之前介绍的 Circle 类。 Circle 的属性是 x 坐标、y 坐标和半径。 这些操作是findArea()、findCircumference() 和scale()。 我们假设 x-coord 和 y-coord 是私有数据成员,radius 是受保护数据成员,并且成员函数是公共的。 下图给出了该类的图示。

类圆

对象

一个对象被表示为一个有两个部分的矩形 −

  • 顶部部分包含对象的名称以及它所属的类或包的名称。 名称采用以下形式 −

    • object-name − class-name

    • object-name − class-name :: package-name

    • class-name − 对于匿名对象

  • 底部部分表示属性的值。 它采用attribute-name = value的形式。

  • 有时对象使用圆角矩形表示。

示例 − 让我们考虑一个名为 c1 的 Circle 类对象。 我们假设c1的中心位于(2, 3),c1的半径为5。下图描绘了该物体。

对象 C1

组件

组件是系统中物理的、可替换的部分,它符合并提供一组接口的实现。 它代表类和接口等元素的物理包装。

符号 − 在 UML 图中,组件由带有选项卡的矩形表示,如下图所示。

组件符号

接口

接口是类或组件的方法的集合。 它指定了类或组件可能提供的一组服务。

符号 − 通常,接口与接口名称一起绘制为一个圆圈。 接口几乎总是附加到实现它的类或组件。 下图给出了接口的表示法。

组件接口

包是一组有组织的元素。 包中可能包含结构性内容,例如类、组件和其他包。

符号 − 从图形上看,包由选项卡式文件夹表示。 包通常仅用其名称来绘制。 但是,它可能包含有关包装内容的其他详细信息。 参见下图。

包

关系

不同类型关系的表示法如下 −

关系符号

通常,关系中的元素在关系中扮演特定的角色。 角色名称表示参与特定上下文的元素的行为。

示例 − 下图显示了类之间不同关系的示例。 第一张图显示了两个类(Department 和 Employee)之间的关联,其中一个部门可能有许多员工在其中工作。 Worker 是角色名称。 "部门"旁边的"1"和"员工"旁边的"*"表示基数比是一对多。 第二个图描绘了聚合关系,一所大学是许多系的"整体"。

关系