第6章-面向对象概念和Rose建模技术.ppt
《第6章-面向对象概念和Rose建模技术.ppt》由会员分享,可在线阅读,更多相关《第6章-面向对象概念和Rose建模技术.ppt(47页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1目录页面向对象概念和Rose建模技术第6章本章本章要点要点n 掌握面向对象的基本概念;n 理解面向对象与面向过程的区别;n 了解UML的各种图;n 熟悉静态建模和动态建模的方法;n 学会Rational Rose软件的安装与配置方法;n 掌握利用Rational Rose建模的基本步骤。2目录页6.1 面向对象方法概述第6章目前广泛使用的软件工程方法主要有结构化方法和面向对象的方法。目前广泛使用的软件工程方法主要有结构化方法和面向对象的方法。结构化方法是面向功能的,它从系统的功能入手,将系统分解为若干功能模块,通常使用结构化方法是面向功能的,它从系统的功能入手,将系统分解为若干功能模块,通常
2、使用函数或过程来实现所需功能,数据通常作为参数传递给函数或过程。用这种方式开发的软件可函数或过程来实现所需功能,数据通常作为参数传递给函数或过程。用这种方式开发的软件可重用性、可维护性都较差。尤其是当软件规模较大或软件需求模糊易变时,采用结构化方法开重用性、可维护性都较差。尤其是当软件规模较大或软件需求模糊易变时,采用结构化方法开发软件往往不能成功。为此,人们提出了面向对象的开发方法。发软件往往不能成功。为此,人们提出了面向对象的开发方法。面向对象方法可用下面的公式来描述:面向对象方法可用下面的公式来描述:面向对象面向对象面向对象面向对象 =对象对象对象对象 +类类类类 +继承继承继承继承 +
3、消息传递消息传递消息传递消息传递6.1.1 面向对象方法的特征面向对象方法的特征 3目录页6.1 面向对象方法概述第6章面向对象方法的主要优点如下:面向对象方法的主要优点如下:1.与人类习惯的思维方法一致与人类习惯的思维方法一致2.系统的稳定性好系统的稳定性好3.可重用性好可重用性好4.较易于开发大型软件产品较易于开发大型软件产品5.可维护性好可维护性好6.1.1 面向对象方法的特征面向对象方法的特征 4目录页6.1 面向对象方法概述第6章1.对象(对象(Object)在应用领域中有意义的、与所有解决的问题有关系的任何事物都可以作为对象。对象可以在应用领域中有意义的、与所有解决的问题有关系的任
4、何事物都可以作为对象。对象可以是具体的物体实体的抽象,也可以是人为的概念,或者是任何有明确边界和意义的东西。例如,是具体的物体实体的抽象,也可以是人为的概念,或者是任何有明确边界和意义的东西。例如,一名学生、一本图书等。一名学生、一本图书等。对象由一组属性和对这组属性进行操作的一组方法(服务)组成。对象由一组属性和对这组属性进行操作的一组方法(服务)组成。属性就是对象所包含的数据,它代表对象的状态,它在设计对象时确定,一般只能通过执属性就是对象所包含的数据,它代表对象的状态,它在设计对象时确定,一般只能通过执行对象的操作来改变,例如,学生的属性有姓名、年龄等。行对象的操作来改变,例如,学生的属
5、性有姓名、年龄等。操作(或称方法或服务)即对象所能执行的操作,也就是类中所定义的服务,它描述了对操作(或称方法或服务)即对象所能执行的操作,也就是类中所定义的服务,它描述了对象执行操作的算法,响应消息的方法。可以通过向对象发送消息来调用其方法。例如:象执行操作的算法,响应消息的方法。可以通过向对象发送消息来调用其方法。例如:“读者读者”类的服务有类的服务有“借书借书”、“还书还书”等。等。6.1.2 面向对象方法的基本概念面向对象方法的基本概念5目录页6.1 面向对象方法概述第6章1.对象(对象(Object)6.1.2 面向对象方法的基本概念面向对象方法的基本概念6目录页6.1 面向对象方法
6、概述第6章2.类(类(Class)和实例()和实例(Instance)类是具有相同属性和服务的一组对象的集合。类是关于对象的抽象描述,反映了该对象类类是具有相同属性和服务的一组对象的集合。类是关于对象的抽象描述,反映了该对象类型的所有对象的性质。型的所有对象的性质。一个对象则是其对应类的一个实例。一个对象则是其对应类的一个实例。类和对象的关系是:类是对象的抽象,类是对象的类和对象的关系是:类是对象的抽象,类是对象的“模板模板”,类用于创建对象;对象是类,类用于创建对象;对象是类的实例。的实例。例如:例如:“学生学生”是一个类,它描述了所有学生的性质。而一个具体的学生是一个类,它描述了所有学生的
7、性质。而一个具体的学生“张三张三”是类是类“学生学生”的一个实例。的一个实例。类是关于对象性质的描述,它同对象一样,包括一组数据属性和在数据上的操作。类是关于对象性质的描述,它同对象一样,包括一组数据属性和在数据上的操作。6.1.2 面向对象方法的基本概念面向对象方法的基本概念7目录页6.1 面向对象方法概述第6章4封装(封装(Encapsulation)封装是一种信息隐蔽技术,用户只能见到对象封装界面上的信息,而对象内部的实现细节封装是一种信息隐蔽技术,用户只能见到对象封装界面上的信息,而对象内部的实现细节对用户是隐藏的。对用户是隐藏的。封装有两个含义,一个是指把对象的全部属性和全部操作(即
8、方法)结合起来,形成一个封装有两个含义,一个是指把对象的全部属性和全部操作(即方法)结合起来,形成一个不可分割的独立单位(即对象);另一个是指信息隐蔽,即尽可能隐蔽对象内部的行为实现细不可分割的独立单位(即对象);另一个是指信息隐蔽,即尽可能隐蔽对象内部的行为实现细节。节。类(或对象)是封装的基本单位。在类中定义的接收对方消息的方法称为类的接口。封装类(或对象)是封装的基本单位。在类中定义的接收对方消息的方法称为类的接口。封装使对象形成两个部分:接口部分和实现部分。接口部分是可见的,供外界通过消息来访问该对使对象形成两个部分:接口部分和实现部分。接口部分是可见的,供外界通过消息来访问该对象,而
9、实现部分不可见。象,而实现部分不可见。6.1.2 面向对象方法的基本概念面向对象方法的基本概念8目录页6.1 面向对象方法概述第6章5继承性继承性(Inheritance)继承性是父类和子类之间共享数据和方法的机制,这是类之间的一种关系。继承性是父类和子类之间共享数据和方法的机制,这是类之间的一种关系。在设计一个新类时,可以在一个已经存在的类的基础上进行,只需考虑新类与已存在类所在设计一个新类时,可以在一个已经存在的类的基础上进行,只需考虑新类与已存在类所不同的部分,新类可以直接继承这个已经存在类的属性和方法,将其作为自己的内容,并可以不同的部分,新类可以直接继承这个已经存在类的属性和方法,将
10、其作为自己的内容,并可以在新类中定义自己的属性和方法。已经存在的类称为超类、基类或父类,新的类称为子类或派在新类中定义自己的属性和方法。已经存在的类称为超类、基类或父类,新的类称为子类或派生类。例如,新类生类。例如,新类B能使用类能使用类A中的属性和方法,则称类中的属性和方法,则称类A是类是类B的父类,类的父类,类B是类是类A的子类,也称的子类,也称类类B继承了类继承了类A。继承性有两种类型:一个子类只有唯一的一个父类,这种继承称为单继承;一个子类也可继承性有两种类型:一个子类只有唯一的一个父类,这种继承称为单继承;一个子类也可以有多个父类,它可以从多个父类中继承特性,这种继承称为多继承。以有
11、多个父类,它可以从多个父类中继承特性,这种继承称为多继承。6.1.2 面向对象方法的基本概念面向对象方法的基本概念9目录页6.1 面向对象方法概述第6章6多态性(多态性(Polymorphism)对象根据所接收的消息而做出动作,同样的消息被不同的对象接收时可导致完全不同的行对象根据所接收的消息而做出动作,同样的消息被不同的对象接收时可导致完全不同的行为,该现象称为多态性。为,该现象称为多态性。在面向对象的软件技术中,多态性是指子类对象可以像父类对象那样使用,同样的消息既在面向对象的软件技术中,多态性是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象。可以发送
12、给父类对象也可以发送给子类对象。6.1.2 面向对象方法的基本概念面向对象方法的基本概念10目录页6.1 面向对象方法概述第6章7重载(重载(Overloading)有两种重载,函数重载和运算符重载。有两种重载,函数重载和运算符重载。函数重载是指在同一作用范围内的若干个参数特征不同的函数可以使用相同的函数名字。函数重载是指在同一作用范围内的若干个参数特征不同的函数可以使用相同的函数名字。运算符重载是指同一个运算符可以施加于不同类型的操作数上面。当然,当参数特征不同或被运算符重载是指同一个运算符可以施加于不同类型的操作数上面。当然,当参数特征不同或被操作数的类型不同时,实现函数的算法或运算符的语
13、义是不相同的。操作数的类型不同时,实现函数的算法或运算符的语义是不相同的。重载进一步提高了面向对象系统的灵活性和可读性。重载进一步提高了面向对象系统的灵活性和可读性。6.1.2 面向对象方法的基本概念面向对象方法的基本概念11目录页6.2 统一建模语言(UML)第6章1.UML的发展历史的发展历史统一建模语言(统一建模语言(Unified Modeling Language,UML)是用一组专用符号描述软件模型的语言,)是用一组专用符号描述软件模型的语言,它是由世界著名的面向对象技术专家它是由世界著名的面向对象技术专家Grady Booch、Jim Rumbaugh和和Ivar Jacobso
14、n发起,在著名发起,在著名的面向对象的的面向对象的Booch方法、对象模型技术(方法、对象模型技术(OMT)方法和面向对象的软件工程()方法和面向对象的软件工程(OOSE)方法的)方法的基础上,不断完善、发展的一种统一建模语言。基础上,不断完善、发展的一种统一建模语言。UML是面向对象分析与设计的一种标准表示。它不是一种可视化的程序设计语言,而是一是面向对象分析与设计的一种标准表示。它不是一种可视化的程序设计语言,而是一种可视化的建模语言,不涉及编程问题,与语言平台无关。当前广泛使用的是种可视化的建模语言,不涉及编程问题,与语言平台无关。当前广泛使用的是UML 2.0版本,版本,UML已经成为
15、一个事实上的工业标准,获得了业界的认同。已经成为一个事实上的工业标准,获得了业界的认同。6.2.1 UML概述概述12目录页6.2 统一建模语言(UML)第6章6.2.1 UML概述概述13目录页6.2 统一建模语言(UML)第6章2UML的主要特点的主要特点(1)统一了)统一了Booch、OMT和和OOSE等方法中的基本概念,是软件开发过程中各类人员交流等方法中的基本概念,是软件开发过程中各类人员交流和沟通的工具。和沟通的工具。(2)UML所定义的概念和符号可用于软件开发的分析、设计和实现的全过程,软件开发所定义的概念和符号可用于软件开发的分析、设计和实现的全过程,软件开发人员不必在开发过程
16、的不同阶段进行概念和符号的转换。人员不必在开发过程的不同阶段进行概念和符号的转换。(3)UML所用的语言元素基本都是图形化的,便于理解和沟通,不但开发人员之间可以所用的语言元素基本都是图形化的,便于理解和沟通,不但开发人员之间可以用来交流,客户和开发人员之间也可以用它作为交流的工具。用来交流,客户和开发人员之间也可以用它作为交流的工具。(4)UML可应用于任何软件开发过程、任何语言和工具平台,它支持可应用于任何软件开发过程、任何语言和工具平台,它支持OOP中出现的高级概中出现的高级概念(如模板、线程、协作、框架、模式和组件等),并强调在软件开发中对架构、框架、模式念(如模板、线程、协作、框架、
17、模式和组件等),并强调在软件开发中对架构、框架、模式和组件等的重用。和组件等的重用。(5)UML概念明确,建模表示方法简洁明了,图形结构清晰,所以易于掌握和使用。概念明确,建模表示方法简洁明了,图形结构清晰,所以易于掌握和使用。6.2.1 UML概述概述14目录页6.2 统一建模语言(UML)第6章3UML的应用领域的应用领域UML的主要目标是,以面向对象图的方式描述任何类型的系统,最常用于建立软件系统的的主要目标是,以面向对象图的方式描述任何类型的系统,最常用于建立软件系统的模型,也可以描述非软件领域的系统,如机械系统、企业机构、业务过程或信息系统等。模型,也可以描述非软件领域的系统,如机械
18、系统、企业机构、业务过程或信息系统等。UML可对任何具有静态结构和动态行为的系统进行建模。可对任何具有静态结构和动态行为的系统进行建模。此外,此外,UML适用于系统开发的不同阶段。适用于系统开发的不同阶段。(1)用户需求分析阶段:)用户需求分析阶段:(2)系统分析阶段:)系统分析阶段:(3)设计阶段:)设计阶段:(4)编程)编程(构造构造)阶段:阶段:(5)测试阶段:)测试阶段:6.2.1 UML概述概述15目录页6.2 统一建模语言(UML)第6章1.UML的组成的组成 UMLUML由基本构造块、规则和公用机制三部分组成。由基本构造块、规则和公用机制三部分组成。基本构造块描述从领域问题、系统
19、职责到未来系统中的事物和行为;基本构造块描述从领域问题、系统职责到未来系统中的事物和行为;规则规定了这些构造块如何有机组成合法规则规定了这些构造块如何有机组成合法UMLUML的规则(如的规则(如UMLUML成员的名字、作用域和可成员的名字、作用域和可见性等);见性等);公用机制是用于对不同公用机制是用于对不同UMLUML成员使用的共同的描绘方式(如规范说明、修饰、公共划分成员使用的共同的描绘方式(如规范说明、修饰、公共划分和扩展机制等)。和扩展机制等)。UML UML的基本构造块包括三部分:事物(的基本构造块包括三部分:事物(ThingsThings)、关系()、关系(Relationship
20、sRelationships)和图)和图(DiagramsDiagrams)。其中,事物是模型中最具有代表性的成分的抽象,是模型中的基本成员;关系)。其中,事物是模型中最具有代表性的成分的抽象,是模型中的基本成员;关系是将事物联系在一起的方式;图是很多有相互关系的事物的组。是将事物联系在一起的方式;图是很多有相互关系的事物的组。UML UML的基本构造块如图的基本构造块如图6.26.2所示。所示。6.2.2 UML的主要内容的主要内容16目录页6.2 统一建模语言(UML)第6章6.2.2 UML的主要内容的主要内容图6-2 UML的基本构造块 17目录页6.2 统一建模语言(UML)第6章2
21、.UML的事物的事物UML中的事物包含结构事物、行为事物、分组事物(或称组织事物)和注释事物(或称辅中的事物包含结构事物、行为事物、分组事物(或称组织事物)和注释事物(或称辅助事物)四种。助事物)四种。(1)结构事物)结构事物结构事物是模型中的静态部分,用以呈现概念或实体的表现元素,是软件建模中最常见的结构事物是模型中的静态部分,用以呈现概念或实体的表现元素,是软件建模中最常见的元素。共有七种。元素。共有七种。类类(Class)接口接口(Interface)协作协作(Collaboration)用例用例(Use Case)活动类活动类(Active Class)组件组件(Component)节
22、点节点(Node)6.2.2 UML的主要内容的主要内容18目录页6.2 统一建模语言(UML)第6章(2)行为事物)行为事物交互交互(Interaction)是由一组对象之间在特定上下文中,为达到特定的目的而进行的一是由一组对象之间在特定上下文中,为达到特定的目的而进行的一系列消息交换而组成的动作。系列消息交换而组成的动作。状态机状态机(State Machine)由一系列对象的状态组成。由一系列对象的状态组成。(3)分组事物)分组事物分组事物是包分组事物是包(Package)可以把一个分组事物看作是一个可以把一个分组事物看作是一个“盒子盒子”,即包。结构事物、,即包。结构事物、行为事物甚至
23、其他分组事物都可以放进包内。包不像组件,组件只在运行时存在,包纯粹是概行为事物甚至其他分组事物都可以放进包内。包不像组件,组件只在运行时存在,包纯粹是概念上的,只在开发阶段存在。念上的,只在开发阶段存在。(4)注释事物)注释事物注释事物是注释事物是UML模型的解释部分。模型的解释部分。6.2.2 UML的主要内容的主要内容19目录页6.2 统一建模语言(UML)第6章6.2.2 UML的主要内容的主要内容20目录页6.2 统一建模语言(UML)第6章3.UML的关系的关系常见的关系有关联、依赖、泛化、实现等常见的关系有关联、依赖、泛化、实现等4种,还有聚集(聚合)和组合(复合)等关系。种,还有
24、聚集(聚合)和组合(复合)等关系。(1)关联)关联表示一事物(如对象)通常要和其他事物(如对象)发生关联。表示一事物(如对象)通常要和其他事物(如对象)发生关联。(2)泛化)泛化表示一般与特殊的关系。如一个子类继承了其他更一般类的属性和操作。表示一般与特殊的关系。如一个子类继承了其他更一般类的属性和操作。(3)依赖)依赖表示一个事物以某种方式依赖于另一种事物。如一个类使用了另一个类。表示一个事物以某种方式依赖于另一种事物。如一个类使用了另一个类。(4)实现)实现表示类和接口之间的关系。表示类和接口之间的关系。(5)聚集)聚集是关联的一种,通常聚集对象由部分对象组成。也就是整体与部分关联。是关联
25、的一种,通常聚集对象由部分对象组成。也就是整体与部分关联。(6)组合)组合是一种特殊的聚集关系。在一个组合对象中,部分对象只能作为组合对象的是一种特殊的聚集关系。在一个组合对象中,部分对象只能作为组合对象的一部分与组合对象同时存在。一部分与组合对象同时存在。6.2.2 UML的主要内容的主要内容21目录页6.2 统一建模语言(UML)第6章4.UML的图的图UML中的图与视图是有区别的。视图由多个图构成,从不同的目的或角度描述系统。图由中的图与视图是有区别的。视图由多个图构成,从不同的目的或角度描述系统。图由各种图片(模型元素符号)构成,用来描述视图的一个内容。各种图片(模型元素符号)构成,用
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 概念 Rose 建模 技术
限制150内