UML静态图-对象图

概述

静态图包含类图、对象图和包图的主要目的是在系统详细设计阶段,帮助系统设计人员以一种可视化的方式来理解系统的内部结构和代码结构,包括类的细节、类的属性和操作、类的依赖关系和调用关系、类的包和包的依赖关系。

对象图与类图之间的关系,就好比对象与类之间的关系,对象是赋予了某种特殊值时的类的实例。对象图拥有与类图不一样的表示法和应用场景。

一、对象图表示法

对象图用来表示类的实例。对象图显示某时刻对象和对象之间的关系,是类图的变化,一个对象图可看成一个类图的实例(Instance),对象图表示的是类的对象实例而不是真实的类。由于对象存在生命周期,因此对象图只能在系统某一时间段存在。

与类图中的表示法一样,对象图中并无新的表示法,唯一的区别是对象名下要加下画线,可以认为,只有对象而无类的类图就是一个"对象图"。

如图 3-15 所示,它表示了类 User 的对象图。

在对象图中,对象名可以有3种表示形式:

(1)对象名:类名。

(2):类名。

(3)对象名。

二、对象图的使用场景--席列图和协作图

实际上,对象图几乎很少被用到,它包含的信息量太小,仅仅用于呈现某一时刻对象的值,对软件的设计几乎没有太大的帮助,使用远没有类图广泛。不过它们在解释复杂关系的细小问题时(特别是递归关系时)很有用。例如,一个类图表示一个大学的Department 可以包括其他很多的Departments。

对于对象图来说无须提供单独的形式。类图中就包含了对象,所以只有对象而无类的类图就是个"对象图"。然而,"对象图"这条短语在刻画各方面特定使用时非常有用。

对象图显示对象集及其联系,代表了系统某时刻的状态。它包含带有值的对象,而非描述符,当然,在许多情况下对象可以是原型。用协作图可显示一个可多次实例化的对象及其联系的总体模型,合作图包含对象和链的描述符(类元角色和联系角色)。如果协作图实例化,则产生了对象图。

对象图不显示系统的演化过程,为此目的,可用带消息的协作图或用序列图表示一次交互。例如,如图3-16所示显示了一个序列图,序列图上方的3个操作对象就是采用对象图来表示的。

再比如图 3-17所示的协作图中,其中的3个操作对象也是采用了对象图来表示的。

相关推荐
巽星石3 天前
PlantUML中的实体关系图
uml·plantuml·er图
rolt11 天前
[图解]静态关系和动态关系
uml·面向对象
边城仔12 天前
【设计模式】UML类图
设计模式·uml
J老熊21 天前
Java设计模式之责任链模式详细讲解和案例示范
java·设计模式·面试·系统架构·责任链模式·uml
吕永强25 天前
面向对象需求分析
需求分析·uml·类图·用例图·顺序图·状态图·活动图
Tacy02131 个月前
UML概述
uml
茜茜西西CeCe1 个月前
软件工程知识点总结(2):需求分析(一)——用例建模
软件工程·需求分析·uml·用例图·活动图·用例建模·ooa
J老熊1 个月前
Java设计模式之建造者模式详细讲解和案例示范
java·设计模式·面试·系统架构·建造者模式·uml
General_G1 个月前
UML之时序图
uml