UML静态图-对象图

概述

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

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

一、对象图表示法

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

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

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

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

(1)对象名:类名。

(2):类名。

(3)对象名。

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

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

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

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

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

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

相关推荐
昕冉2 天前
UML图之学习绘制样例
设计模式·uml
昕冉2 天前
双碳系统之UML图
前端框架·uml
Lijunyan12984 天前
DeepSeek提示词指南:从基础到高阶的全面解析
经验分享·笔记·python·uml·segmentfault
springfe01014 天前
图形化表达方法
uml·数据可视化
哆啦A梦的口袋呀8 天前
理解系统交互:UML时序图
软件工程·交互·uml
哆啦A梦的口袋呀9 天前
深入理解系统:UML类图
开发语言·python·uml
和煦的11 天前
UML、mermaid在代码中的表现形式
uml
爱喝酸奶的桃酥12 天前
【无标题】
uml
李明卫杭州13 天前
UML中用例图的绘制
架构·uml
rolt14 天前
[pdf、epub]300道《软件方法》强化自测题业务建模需求分析共257页(202505更新)
产品经理·架构师·uml