对象

在 UML 模型中,对象是用来表示一个或多个类的实例的模型元素。可以将对象添加至模型来表示具体实例和典型实例。具体实例表示现实世界中实际的人或事。例如,Customer 类的具体实例表示实际的客户。Customer 类的典型实例包含用来表示典型客户的数据。

类是对一种概念或物理事物的抽象描述,而对象则表示具体的实体。对象具有严格定义的范围并且在应用程序中是有意义的。对象具有下表中所列示的特征:

特征 描述
状态 状态是一个对象可以存在的条件。对象的状态是通过一组属性来实现的,而这些属性在经过一段时间之后通常会发生变化。
行为 行为用来确定一个对象如何对其他对象发出的请求作出响应。行为是通过一组操作实现的。
标识 对象的标识是唯一的。如果一个类的多个实例中的每个实例都处于相同的状态,那么可以使用对象的唯一标识来区分这些实例。

每个对象必须具有唯一名称。完整对象名由三部分组成:对象名、角色名和类名。为一个对象命名时,可以使用这三部分的任意组合。下表显示了一个在线购物系统的多个对象名变化形式。

语法 示例 描述
object/role:class cart100/storage:cart 在交互期间,cart 类的指定实例(cart100)充当存储器角色。
object:class cart100:cart cart 类的指定实例(cart100)。
/role:class /storage:cart 在交互期间,cart 类的充当存储器角色的匿名实例。
object/role cart/storage 充当存储器角色的名为 cart 的对象。此对象是一个隐藏了类名的对象或者是一个未与类相关联的实例。
object cart100 名为 cart100 的对象。此对象是一个隐藏了类名的实例或者是一个未与类相关联的实例。
/role /storage 匿名实例充当存储器角色。此对象是一个隐藏了对象名和类名的实例或者是一个未与对象或类相关联的实例。
:class :cart customer 类的匿名实例。

对象类型

下表列示了三种类型的对象。

对象类型 描述
活动 活动对象拥有控件的线程并且可以启动控制活动。流程和任务都是活动对象类型。
被动 被动对象也拥有数据,但是不启动控制。
多个实例 是同一个类的一组对象或多个实例。多个实例通常用来显示一组对象与单条消息(或激励)进行交互。
相关任务
组织 UML 模型

反馈