UML静态图-对象图

概述

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

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

一、对象图表示法

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

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

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

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

(1)对象名:类名。

(2):类名。

(3)对象名。

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

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

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

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

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

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

相关推荐
rolt18 小时前
长得像用例图的类图-《软件方法》8.2.3.4
软件工程·uml·面向对象
成工小白1 天前
【UML】- 用例图(结合银行案例解释其中的奥义)
uml·用例图
ftswsfb2 天前
【系统架构设计师】六、UML建模与架构文档化
系统架构·uml
rolt6 天前
[pdf,epub]105页《分析模式》漫谈合集01
ddd·架构师·uml·领域驱动设计·分析模式
奶味少女酱~10 天前
uml类图
uml
犬余12 天前
UML之用例图详解
笔记·学习·uml
许个小愿望12 天前
软件设计师----UML
uml
找了一圈尾巴12 天前
UML 总结(基于《标准建模语言UML教程》)
系统架构·uml
Gavynlee13 天前
设计模式总结
uml