如何在UML类图中指定可见性

UML类表示法

类代表封装状态的概念(属性)和行为(操作)。每个属性都有一个类型。每个操作有一个签名. 类名是唯一必需的信息.

UML Class Notation

封装是数据隐藏的原则:对象将其数据隐藏起来,不允许外部访问,只允许外部实体通过调用对象的方法来操作数据。

类中元素的封装程度取决于该元素的可见性级别。属性或操作的可见性指明了其他类的对象是否能够“看到”或访问该属性或操作。

UML支持以下四种可见性级别:

放在类中属性或操作名称前的字符~、+、#和–表示其可见性:

  • 包可见性(由波浪号~表示)意味着同一包中的任何类的对象都可以看到并使用给定的类。
  • 公共可见性(+)意味着任何类的任何对象都可以使用给定的属性或操作。
  • 受保护的可见性(#)意味着只有给定类的子类(即层次结构中较低的类)的对象才能访问该属性或操作。
  • 私有可见性(-)意味着只有该类本身的对象才能使用该属性或操作。

下图展示了示例属性和操作的可见性修饰符:

Class Visibility

统一建模语言(UML)

Leave a Reply