2020/2/25第6章对象图教学目标:1、掌握对象和对象图的概念以及对象图的内容2、掌握对象图和类图的区别3、了解对象图建模2020/2/25第6章目录6.1对象的概念6.2对象图的概念和内容6.3对象图建模2020/2/25用例图用例视图类图对象图逻辑视图时序图协作图状态图活动图并发视图组件图组件视图配置图配置视图视图修饰注解规格说明通用划分扩展机制通用机制模型元素UMLUML中对象图的位置2020/2/256.1对象的概念对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。对象可以是具体的、有形的物,也可以是无形的事物或概念。对象只描述客观事物本质的、与系统目标有关的特征,而不考虑那些非本质的、与系统目标无关的特征。对象是一个封装数据属性和操作行为的实体。系统中的对象在软件生命周期的各个阶段可能有不同的表示形式。2020/2/25对象为何物?对象:类的实例,是具有具体属性值的一个具体事物。对象名首字母小写,后面跟一个冒号,冒号后面是该对象所属的类名,并且整个名字要带下划线。分类:命名对象和匿名对象。china:Country:Country2020/2/25对象与类的关系类是静态的,对象是动态的;类是一般化,对象是个性化;类是定义,对象是实例;类是抽象,对象是具体。2020/2/251、对象图(ObjectDiagram)描述的是参与交互的各个对象在交互过程中某一时刻的状态。对象图可以被看作是类图在某一时刻的实例。2、对象图的建模元素:对象和链(link)。其中:(1)对象是类的实例(2)对象之间的链是类之间的关联的实例(3)对象图是类图的实例6.2对象图的概念和内容2020/2/253.对象图和类图的区别:对象图:描述在某特定时刻系统中对象与对象间的关系,描述一个特定状态,是系统详细状态在某一时刻的快照。类图:主要描述一个系统中的所有可能的状况。2020/2/254、对象图的表示方法用UML进行建模时涉及9个图,但Rose只支持其中的8个图,对象图不能在Rose中直接表示出来,只能用别的图来代替(如:协作图)。2020/2/255、在对象图中,对象名有三种表示形式:(1)对象名:类名(2):类名(3)对象名:Object1:Object2china:Country:Countrychina2020/2/25(7)链:是关联的一个实例,链连接的是对象而不是类,和对象名要加下划线一样,链名也要加下划线。yaoMing:Playerrocket:TeamPlayon请思考:类和类之间的关系叫什么?2020/2/256、对象图的图形说明:2020/2/256.3对象图建模对象图的使用:当需要说明系统在某个特定时刻或者处于某个特定状态时的内部结构时非常适合采用对象图。对象图说明了设计者的意图,展示了实际使用某些类和关系的方式,所以对象图通常应用于详细设计和编码阶段。由于对于一个类产生的对象可能多种,类间的关系也可能在那个时刻没有被对象表现出来;所以,对象图不能完全描述系统的对象结构。2020/2/25对象图:d1:Departmentb:Companyname=“Sales”d2:Departmentname=“HR”d3:Departmentname=“Product”d4:Departmentname=“CNSales”2020/2/25本章小结1、什么是对象?2、对象与类的区别?3、对象的表示方法?4、对象图与类图的区别?5、对象图包括的建模元素?作业:书P136中习题62020/2/25课堂练习1、如图:最上面的对象名称是什么?该图表示的意思是什么?请绘制出与其相应的类图.china:CountryfuJian:ProvincesiChuan:Province2020/2/252、“书”、“购物车”、“我的UML参考手册(第二版)”、“银行卡”、“号码为12600000000的手机卡”中,哪些是对象?哪些是类?2020/2/25第6章结束