UML 中的实体类型
如前所述,实体类型标识了具有同样结构的一系列工件。实体类型是一幅蓝图,根据它能生成只能通过身份和状态互相区别的任意数目的工件。
UML 中的相应元素是类。根据定义,类能够隐藏内容,而实体具有可访问接口。这看上去互相矛盾,但是实际上并非如此。UML 允许类利用公共属性使结构公共化。
类一般用矩形表示,该矩形最多可分为三个部分:
第一部分包括类的原型和名称。原型指的是 UML 中为了强化共同特征而进一步进行的元素分类。比如,所有可能带有遗留原型的遗留类,可能将立即将遗留原型划分为不可修改的一类。虽然类本身是类型的一种表示,但是我们用原型<<实体>>来划分类型(<<…>>是用于指定原型的语法)。
第二部分包含具有类型和可见性的属性。它还可以包含属性的其他细节,比如初始值和原型。第二部分在缩略图中可以省略。
第三部分是为类的行为保留的。由于实体类型不需要行为,所以我们就略过该部分。
根据抽象级别的不同,类可以用一个、两个或三个部分显式。
实体是实体类型的一个实例。在 UML 中,对象是类的实例。这意味着实体本身与对象相对应。
对象的表示来源于类的表示。最显著的区别在于对象的名称有下划线,并且只有一个或两个部分。
第一个部分包含以冒号隔开的可选的原型、对象名称,以及派生类的名称,之间用冒号隔开。至少必须指定其中一个名称。第二部分包含相关属性以及它们的值。
表示对象的最好的方法就是只使用一个部分,并将标识符 指定为对象的名称。
图 11 实体类型 Employees 和实体 553-32-2222 在 UML 中被显示为类和对象
