UML九已经介绍过的基本图,然后,我们再来看看对象图和包图。
一、对象图
谈到对象。我们不得不说一下对象。对象(Object)是对象类的实例(Instance),用于模型化特定的实体。对象是唯一的。能够标识的。比方我和你就是两个对象,我们有自己的名字。
对象的图标与对象类一样是用实线矩形框表示的,矩形框中含有若干分隔框,分别表示对象的名字、属性以及其它成分等。对象名分隔框中包括一个对象的名字,置于框的中央。
对象名的格式为:对象名:类列表[状态列表]。
对象图(Object Diagram)表示一组对象和它们之间的联系。
对象图是一个系统的具体状态在某一时刻的快照。对象图实质上是对象类图的实例,或者是交互图的静态部分的实例,对象图有时也称为实例图。对象图的表示方法与类图没有什么不同,对象图相同是由节点和弧组成。
二、包图
了解包图之前应先学习包的概念。
包(Package)是一种对模型元素进行成组组织的通用机制。
包用于定义一个名字空间(Namespace)或容器(Container)。它本身是UML的一种模型元素。
运用包能够把语义上相近的可能一起变更的模型元素组织在同一个包里。将包中的元素作为一个总体对待,而且控制它们的可视性和存取。
包的图标是一个大矩形(内容框)。左上角带一个小矩形(名字框)。包与包之间的联系主要有两种:依赖(尤其是输入依赖)和泛化。
1)依赖
包的依赖联系相同是用一条虚箭线表示,虚箭线从依赖包(源)指向独立包(目标)。
输入依赖(Import Dependency)是包与包之间的一种存取依赖关系。输入是指同意一个包中的元素存取还有一个包中的元素。输入依赖是单向的。它的表示方法是在虚箭线上标有构造型《Import》,箭头从输入方的包指向输出方的包
包之间的合并联系也是一种依赖关系,它用一条带有构造型《merge》的虚箭线表示,从接受合并包(Receiving Package)指向被合并包(Merged Package)。
2)泛化
包之间的泛化联系与对象类之间的泛化联系十分类似,对象类之间泛化的概念和表示法在此大多能够使用,泛化联系表达事物的一般与特殊的关系。
包图由包和包之间的联系构成,是维护和控制系统整体结构的重要建模工具。
包在非常多方面与对象类相似,可是在建立系统模型时特别要注意差别包和类。对象类是问题领域或解决方式中的事物的抽象。包是把这些事物组织成模型的一种机制。包能够没有标识,由于它没有实例i。在执行系统中不可见;类必须有标识,它有实例,类的实例(对象)是执行系统的组成元素。
三、实战演练
以下各自是我关于机房收费系统的对象图和包图。
四、总结
画对像图和包图的时候要注意。对象图是类图的实例化,把类图详细化就能够了。包图和类图类似。但它没有实例。所以能够没有实例。
版权声明:本文博主原创文章,博客,未经同意不得转载。