类图和对象图.ppt
《类图和对象图.ppt》由会员分享,可在线阅读,更多相关《类图和对象图.ppt(67页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、类图和对象图类图和对象图静态图:类图、对象图静态图:类图、对象图v类和对象的基本概念;类和对象的基本概念;v三个层次的观点;三个层次的观点;v类图和对象图的基本要素;类图和对象图的基本要素;v小小 结。结。华华 南南 理理 工工 大大 学学2 2软软 件件 需需 求求 分分 析析 与与 建建 模模 I 类和对象的基本概念类和对象的基本概念v引引 言;言;v对象和类;对象和类;v类和对象的实例;类和对象的实例;v类和对象的表示;类和对象的表示;v三个层次的观点。三个层次的观点。华华 南南 理理 工工 大大 学学3 3软软 件件 需需 求求 分分 析析 与与 建建 模模u 引引 言言v类图类图技术
2、是技术是OOOO方法的核心技术,应用非方法的核心技术,应用非常广泛,其中类、对象以及它们之间的关常广泛,其中类、对象以及它们之间的关系是最基本的建模元素。类模型和对象模系是最基本的建模元素。类模型和对象模型揭示了系统的结构。型揭示了系统的结构。v分类可以有效地使复杂问题简化。分类可以有效地使复杂问题简化。建立类建立类模型的过程,是把现实世界中与问题有关模型的过程,是把现实世界中与问题有关的各种对象及其相互关系进行抽象和分类的各种对象及其相互关系进行抽象和分类的过程。的过程。华华 南南 理理 工工 大大 学学4 4软软 件件 需需 求求 分分 析析 与与 建建 模模u 对象和类对象和类v对象对象
3、是指某个事物,大多对应于真实世界中的是指某个事物,大多对应于真实世界中的某个客观实体;但有些对象在真实世界中没有某个客观实体;但有些对象在真实世界中没有直接的对应物,是人们对某个事物的一种抽象直接的对应物,是人们对某个事物的一种抽象描述。描述。v所有的对象都是有唯一标识的独立实体。对象所有的对象都是有唯一标识的独立实体。对象之间的区别是由它们固有的存在性所决定的,之间的区别是由它们固有的存在性所决定的,而与它们的特征是否相同无关。对象的基本特而与它们的特征是否相同无关。对象的基本特征可以归纳为对象的征可以归纳为对象的属性属性和和行为行为两类。两类。华华 南南 理理 工工 大大 学学5 5软软
4、件件 需需 求求 分分 析析 与与 建建 模模v类是指对一组具有类是指对一组具有相同特征相同特征的对象的抽象的对象的抽象描述;任何对象都是某个类的实例。描述;任何对象都是某个类的实例。v我们采用类的概念来研究系统的构成,划我们采用类的概念来研究系统的构成,划分问题域中涉及到的各种对象。类之间的分问题域中涉及到的各种对象。类之间的继承关系是继承关系是OOOO方法中的一个重要概念。方法中的一个重要概念。华华 南南 理理 工工 大大 学学6 6软软 件件 需需 求求 分分 析析 与与 建建 模模u 类和对象的实例类和对象的实例u在在 一一 个个 信信 息息 系系 统统 中中:客客 户户(Custom
5、er)(Customer)、合合 同同(Agreement)(Agreement)、发发票票(Invoice)(Invoice)、债债务务(Debt)(Debt)、资资产产(Asset)(Asset)、报价单报价单(Quotation)(Quotation)u在在一一个个技技术术系系统统中中:感感应应器器(Sensor)(Sensor)、显显示示器器(Display)(Display)、输入输出卡输入输出卡(I/O Card)(I/O Card)、按键按键(Button)(Button)u在在软软件件系系统统中中:文文件件(File)(File)、执执行行程程序序(Executable(Exe
6、cutable program)program)、设设备备(Device)(Device)、图图标标(Icon)(Icon)、窗窗口口(Window)(Window)、滚动条滚动条(Scrollbar).(Scrollbar).u在在人人类类社社会会中中:社社团团、俱俱乐乐部部、大大学学、公公司司、商商店、企业店、企业.华华 南南 理理 工工 大大 学学7 7软软 件件 需需 求求 分分 析析 与与 建建 模模例例:客户类的表示客户类的表示华华 南南 理理 工工 大大 学学8 8软软 件件 需需 求求 分分 析析 与与 建建 模模u 类和对象的表示类和对象的表示:类图和对象图类图和对象图u类类
7、图图描描述述系系统统中中的的类类及及其其相相互互之之间间的的各各种种关关系系,反反映映了了系系统统中中包包含含的的各各种种对对象象的的类类型型以以及及对对象象间间的的各各种种静静态态关关系系,主主要要是是:关关联联和和子子类类型型。类类图图也也可可描描述述类类的的属属性性和和行行为为以以及及对模型中各种成分的约束。对模型中各种成分的约束。u对对象象图图是是类类图图的的实实例例,描描述述系系统统中中各各种种对对象象(类的实例类的实例)以以及对象之间的各种静态关系。及对象之间的各种静态关系。华华 南南 理理 工工 大大 学学9 9软软 件件 需需 求求 分分 析析 与与 建建 模模u类类图图(和和
8、对对象象图图)中中各各个个区区间间的的文文法法:独独立立于于实实现现时时所所使使用用的的程程序序设设计计语语言言,也也可可以以选选用某种语言的文法规则,如用某种语言的文法规则,如C+C+,JavaJava,。u类类中中的的一一个个操操作作可可以以有有多多种种不不同同的的实实现现,每一个实现称作一个方法。每一个实现称作一个方法。华华 南南 理理 工工 大大 学学1010软软 件件 需需 求求 分分 析析 与与 建建 模模u 类和对象的表示类和对象的表示(续续):类图和对象图类图和对象图类类 名名(Class Name)类类 名名属属 性性 (Attributes)类类 名名属属 性性(Attri
9、butes)操作操作(Operations)类的表示类的表示对象名对象名(Object Name)对象名对象名属性属性值值(AValues)对象名对象名属性属性值值 (AValues)方法方法(Methods)对象的表示对象的表示华华 南南 理理 工工 大大 学学1111软软 件件 需需 求求 分分 析析 与与 建建 模模u 三个层次的观点u画画类类图图和和理理解解类类图图时时都都应应采采用用三三个个层层次次的的观观点点。这些观点也适用于其它模型。这些观点也适用于其它模型。u三三个个层层次次的的观观点点不不是是UMLUML的的组组成成部部分分,但但对对建建造造模型或评价模型都非常有用,且都可应
10、用于模型或评价模型都非常有用,且都可应用于UMLUML。u三个层次:三个层次:u概念层概念层u说明层说明层u实现层实现层华华 南南 理理 工工 大大 学学1212软软 件件 需需 求求 分分 析析 与与 建建 模模u概概念念层层描描述述应应用用域域中中的的概概念念,是是对对现现实实世世界界的的直直接接描描述述,与与实实现现它它们们的的类类有有关关,但但与实现方案和实现语言无关。与实现方案和实现语言无关。u说说明明层层描描述述软软件件的的接接口口,而而不不是是软软件件的的实实现现。一一个个类类型型描描述述一一个个接接口口,但但可可能能有有多多种实现。种实现。u实实现现层层从从实实现现的的角角度度
11、定定义义类类及及其其实实现现,揭揭示了软件实现体的构成情况。示了软件实现体的构成情况。华华 南南 理理 工工 大大 学学1313软软 件件 需需 求求 分分 析析 与与 建建 模模II 类类图图和和对象对象图的基本要素图的基本要素u关关 联;联;u属属 性;性;u操操 作;作;u泛泛 化;化;u授授 权;权;u约束规则。约束规则。华华 南南 理理 工工 大大 学学1414软软 件件 需需 求求 分分 析析 与与 建建 模模II.1 关关 联联u一个典型的类图;一个典型的类图;u基本概念;基本概念;u角色及其命名;角色及其命名;u角色的多元性;角色的多元性;u三个层次中的关联;三个层次中的关联;
12、u导航特性。导航特性。华华 南南 理理 工工 大大 学学1515软软 件件 需需 求求 分分 析析 与与 建建 模模u 一个典型的类图一个典型的类图多重性:限制性多重性:限制性的的1*0.1雇员雇员销售代表销售代表多重性:选择多重性:选择关联关联订单订单客户客户nameaddress泛化泛化类类团体客户团体客户个人客户个人客户多重性:多值多重性:多值产品产品1 项项*角色名称角色名称1订单项订单项关联关联*华华 南南 理理 工工 大大 学学1616软软 件件 需需 求求 分分 析析 与与 建建 模模个人客户信用卡号数量:Integer价格:Money确认:Boolean定货单收到日期预付款数量
13、价格发货()结束()客户姓名地址信用等级():String集团客户联系人姓名信用等级信用限额余额()月帐单(Integer)信用等级()=低定单栏目雇员产品*1*110.1采购员if 定货单.客户.信用等级=低then 定货单.预付款 必须是 真 栏目华华 南南 理理 工工 大大 学学1717软软 件件 需需 求求 分分 析析 与与 建建 模模u 关联的表示关联的表示u关联关联的表示:的表示:u用用一一条条无无向向线线段段表表示示,是是一一种种双双向向关关系系。例例如如客客户户和和订订单单的的关关联联:从从客客户户看看,订订单单是他提交的;从订单看,它有一个客户。是他提交的;从订单看,它有一个
14、客户。u用一条有向线段表示,是一种单向关系用一条有向线段表示,是一种单向关系u关关联联的的命命名名:可可以以用用动动词词词词组组或或名名词词命命名名。但但只只要要这这个个关关联联的的含含义义明明确确,则则可可省省略略这这个个名字。名字。华华 南南 理理 工工 大大 学学1818软软 件件 需需 求求 分分 析析 与与 建建 模模u 角色及其命名u关关联联的的两两端端与与类类之之间间(或或与与类类的的实实例例之之间间)的的接接口口表表示示该该类类(或或该该类类的的实实体体)在在这这个个关关联中的行为,称之为角色。联中的行为,称之为角色。u每每个个关关联联有有两两个个角角色色。例例如如,对对于于客
15、客户户和订单之间的关联是:客户和订单。和订单之间的关联是:客户和订单。华华 南南 理理 工工 大大 学学1919软软 件件 需需 求求 分分 析析 与与 建建 模模u可可将将引引出出角角色色的的类类称称作作源源,将将引引入入角角色色的的类类称称作作目目标标。例例如如,从从订订单单到到客客户户的的角角色色的的源源是是订订单单,目标是客户。目标是客户。u为为了了明明确确对对象象在在关关联联中中的的角角色色,可可以以为为角角色色命命名名。例例如从订单到订单项方向上的角色可以命名为项。如从订单到订单项方向上的角色可以命名为项。u如如果果在在关关联联上上没没有有标标出出角角色色名名,则则隐隐含含地地用用
16、该该角角色色的的目目标标类类的的名名称称作作为为它它的的名名称称。例例如如,从从订订单单到到客客户户的的角色应叫做客户。角色应叫做客户。华华 南南 理理 工工 大大 学学2020软软 件件 需需 求求 分分 析析 与与 建建 模模u 角色的多角色的多元元性性u角角色色可可具具有有多多元元性性(一一个个角角色色可可以以有有多多个个对对象象来来扮扮演演)。例如,每个客户对象可以有零或多个订单对象。例如,每个客户对象可以有零或多个订单对象。u多多元元性性的的表表示示。1 1 表表示示 1.1 1.1;*代代表表零零到到无无穷穷;0.10.1是是选选择择符符,表表示示没没有有或或仅仅有有1 1个个;一
17、一个个数数;一一个个范范围围;数字和范围不连续的组合。数字和范围不连续的组合。*B A表示表示 A 和零个、一个或多个和零个、一个或多个 B 关联。关联。0.1 B A表示表示 A 和零个或一个和零个或一个 B 关联关联1.*A A表示表示 A 和一个或多个和一个或多个 B 关联关联1 B A表示表示 A 和一个和一个 B 关联关联华华 南南 理理 工工 大大 学学2121软软 件件 需需 求求 分分 析析 与与 建建 模模v(1 1)关联的名称)关联的名称v(2 2)端点)端点v(3 3)多重性)多重性v(4 4)有序)有序v(5 5)多元关联)多元关联华华 南南 理理 工工 大大 学学22
18、22软软 件件 需需 求求 分分 析析 与与 建建 模模三个层面中,关联性意味着什么?三个层面中,关联性意味着什么?v概念层概念层:在应用域中两类对象之间存在的某种关:在应用域中两类对象之间存在的某种关系系v说明层说明层:表示一种职责:表示一种职责(Responsibility),(Responsibility),一方向另一一方向另一方请求或发送某种消息或服务方请求或发送某种消息或服务,但并不涉及实现但并不涉及实现这种服务的具体方法这种服务的具体方法(methods)(methods)例例,定单的一个职责是记住和报告它的所有者定单的一个职责是记住和报告它的所有者是谁是谁v实现层实现层:意味着:
19、意味着(用指针来用指针来)建立某种关联性。建立某种关联性。华华 南南 理理 工工 大大 学学2323软软 件件 需需 求求 分分 析析 与与 建建 模模u 实现层实现层中的关联(续)中的关联(续)v对双向关联:相关联的两个类中都有指向对方的对双向关联:相关联的两个类中都有指向对方的指针。指针。例如,订单有一个指针集指向订单项,有一个例如,订单有一个指针集指向订单项,有一个指针指向客户。指针指向客户。Class Order Class Order private Customer _customer;private Customer _customer;private Vector _priva
20、te Vector _orderLinesorderLines;.Class Customer private Vector _orders;.华华 南南 理理 工工 大大 学学2424软软 件件 需需 求求 分分 析析 与与 建建 模模u 导航特性1导航导航订订 单单*收到日期收到日期预付款预付款数量数量价格价格发货()发货()结束()结束()客客 户户姓名姓名地址地址信用等级()信用等级():String产产 品品1*1 项项*订单项订单项数量:数量:Integer价格:价格:Money确认:确认:Boolean华华 南南 理理 工工 大大 学学2525软软 件件 需需 求求 分分 析析
21、与与 建建 模模u 导航特性(续)v箭头表示箭头表示导航导航特性。如果只在一个方向上特性。如果只在一个方向上有导航表示,称作有导航表示,称作单向关联单向关联。如果在两个。如果在两个方向上都有导航表示,称作方向上都有导航表示,称作双向关联双向关联。如。如果不带箭头,表示未知或尚未确定。果不带箭头,表示未知或尚未确定。v单向关联时,说明模型中的订单指出它是单向关联时,说明模型中的订单指出它是由哪个客户发出的;实现模型中的订单包由哪个客户发出的;实现模型中的订单包含一个指向客户的指针。含一个指向客户的指针。v对双向关联的限制是两个角色必须互逆。对双向关联的限制是两个角色必须互逆。华华 南南 理理 工
22、工 大大 学学2626软软 件件 需需 求求 分分 析析 与与 建建 模模 II.2 属 性v在三个层面中的属性;在三个层面中的属性;v属性的语法;属性的语法;v补充说明。补充说明。华华 南南 理理 工工 大大 学学2727软软 件件 需需 求求 分分 析析 与与 建建 模模u 在三个层面中的属性v在在概念层概念层,描述类具有的一些属性,描述类具有的一些属性(客户客户对象的名字属性表示客户有名字对象的名字属性表示客户有名字)。v在在说明层说明层,规定类对象属性的值并给出设,规定类对象属性的值并给出设定这些值的方法定这些值的方法(表示客户对象的名字并表示客户对象的名字并有一些设置名字的方法有一些
23、设置名字的方法)。v在在实现层实现层,设置一个物理存储区来保存属,设置一个物理存储区来保存属性的值性的值(也可称做一个实例变量或一个数也可称做一个实例变量或一个数据成员据成员)。华华 南南 理理 工工 大大 学学2828软软 件件 需需 求求 分分 析析 与与 建建 模模u 属性的语法 UML规定其语法为:规定其语法为:可见性可见性 名称名称 多重性多重性:类型类型 =缺省值缺省值 约束特性约束特性 v可见性可见性:表示该属性对类外的元素是否可见。:表示该属性对类外的元素是否可见。v 常用的有常用的有公有、受保护和私有公有、受保护和私有三种。三种。v名称名称:属性的名称,:属性的名称,是一个字
24、符串。是一个字符串。v多重性多重性:任选项,用多值表达式表示,表达格式为:任选项,用多值表达式表示,表达格式为“低值低值.高值。(低值、高值、高值。(低值、高值、0.*0.*、1.11.1)v类型类型:定义属性的种类:定义属性的种类(基本数据类型或用户自定义的类型基本数据类型或用户自定义的类型)。v缺省值缺省值:属性的初始值。:属性的初始值。v约束特性约束特性:描述对属性的约束。:描述对属性的约束。华华 南南 理理 工工 大大 学学2929软软 件件 需需 求求 分分 析析 与与 建建 模模u 补充说明u客户属性的名称可以定义为一个单独的类:定义客户属性的名称可以定义为一个单独的类:定义名字的
25、属性及其相关的操作;然后在客户类和该名字的属性及其相关的操作;然后在客户类和该属性名称类之间建立关联。属性名称类之间建立关联。u对于任何一个对象,其每个属性都具有一个确定对于任何一个对象,其每个属性都具有一个确定的值。而且,一般来讲,属性总是单值的。的值。而且,一般来讲,属性总是单值的。u目前只须将属性看成是一个小而简单的类,诸如目前只须将属性看成是一个小而简单的类,诸如字符串、日期、资金对象以及非对象的值字符串、日期、资金对象以及非对象的值(例如例如整型和实型整型和实型)。华华 南南 理理 工工 大大 学学3030软软 件件 需需 求求 分分 析析 与与 建建 模模类的派生属性类的派生属性人
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 对象
限制150内