软件工程第6章面向对象的概念与模型

软件工程第6章面向对象的概念与模型

ID:39846457

大小:602.50 KB

页数:63页

时间:2019-07-13

软件工程第6章面向对象的概念与模型_第1页
软件工程第6章面向对象的概念与模型_第2页
软件工程第6章面向对象的概念与模型_第3页
软件工程第6章面向对象的概念与模型_第4页
软件工程第6章面向对象的概念与模型_第5页
资源描述:

《软件工程第6章面向对象的概念与模型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三篇面向对象方法学第6章面向对象的概念与模型退出6.1面向对象方法学概述6.2面向对象方法学的主要优点6.3面向对象的概念6.4面向对象建模6.5对象模型6.6动态模型6.7功能模型6.8小结面向对象(Object-Oriented,缩写为OO)方法学的出发点和基本原则,是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程,也就是使描述问题的问题空间(也称为问题域)与实现解法的解空间(也称为求解域)在结构上尽可能一致。6.1面向对象方法学概述通常,客观世界中的实体既具有静态的属性又具有动态的行为。然而传统语言提供的解空间对象实质上

2、却仅是描述实体属性的数据,必须在程序中从外部对它施加操作,才能模拟它的行为。众所周知,软件系统本质上是信息处理系统。数据和处理原本是密切相关的,把数据和处理人为地分离成两个独立的部分,会增加软件开发的难度。与传统方法相反,面向对象方法是一种以数据或信息为主线,把数据和处理相结合的方法。面向对象方法把对象作为由数据及可以施加在这些数据上的操作所构成的统一体。对象与传统的数据有本质区别,它不是被动地等待外界对它施加操作,相反,它是进行处理的主体。必须发消息请求对象主动地执行它的某些操作,处理它的私有数据,而不能从外界直接对它的私有数据进行操作。面向对象方法学所提供的“对象”概念

3、,是让软件开发者自己定义或选取解空间对象,然后把软件系统作为一系列离散的解空间对象的集合。应该使这些解空间对象与问题空间对象尽可能一致。这些解空间对象彼此间通过发送消息而相互作用,从而得出问题的解。也就是说,面向对象方法是一种新的思维方法,它不是把程序看作是工作在数据上的一系列过程或函数的集合,而是把程序看作是相互协作而又彼此独立的对象的集合。每个对象就像一个微型程序,有自己的数据、操作、功能和目的。这样做就向着减少语义断层的方向迈了一大步,在许多系统中解空间对象都可以直接模拟问题空间的对象,解空间与问题空间的结构十分一致,因此,这样的程序易于理解和维护。概括地说,面向对象方法具

4、有下述四个要点。·认为客观世界是由各种对象组成的,任何事物都是对象,复杂的对象可以由比较简单的对象以某种方式组合而成。按照这种观点,可以认为整个世界就是一个最复杂的对象。因此,面向对象的软件系统是由对象组成的,软件中的任何元素都是对象,复杂的软件对象由比较简单的对象组合而成。由此可见,面向对象方法用对象分解取代了传统方法的功能分解。·把所有对象都划分成各种对象类(简称为类,Class),每个对象类都定义了一组数据和一组方法。数据用于表示对象的静态属性,是对象的状态信息。因此,每当建立该对象类的一个新实例时,就按照类中对数据的定义为这个新对象生成一组专用的数据,以便描述该对象

5、独特的属性值。例如,荧光屏上不同位置显示的半径不同的几个圆,虽然都是Circle类的对象,但是,各自都有自己专用的数据,以便记录各自的圆心位置、半径等等。类中定义的方法,是允许施加于该类对象上的操作,是该类所有对象共享的,并不需要为每个对象都复制操作的代码。·按照子类(或称为派生类)与父类(或称为基类)的关系,把若干个对象类组成一个层次结构的系统(也称为类等级)。在这种层次结构中,通常下层的派生类具有和上层的基类相同的特性(包括数据和方法),这种现象称为继承(Inheritance)。但是,如果在派生类中对某些特性又做了重新描述,则在派生类中的这些特性将以新描述为准,也就是说

6、,低层的特性将屏蔽高层的同名特性。·对象彼此之间仅能通过传递消息互相联系。对象与传统的数据有本质区别,它不是被动地等待外界对它施加操作,相反,它是进行处理的主体,必须发消息请求它执行它的某个操作,处理它的私有数据,而不能从外界直接对它的私有数据进行操作。也就是说,一切局部于该对象的私有信息,都被封装在该对象类的定义中,就好像装在一个不透明的黑盒子中一样,在外界是看不见的,更不能直接使用,这就是“封装性”。综上所述,面向对象的方法学可以用下列方程来概括:OO=Objects+Classes+Inheritance+Communicationwithmessages也就是说

7、,面向对象就是既使用对象又使用类和继承等机制,而且对象之间仅能通过传递消息实现彼此通信。6.2面向对象方法学的主要优点1.与人类习惯的思维方法一致面向对象的软件技术以对象(Object)为核心,用这种技术开发出的软件系统由对象组成。对象是对现实世界实体的正确抽象,它是由描述内部状态表示静态属性的数据,以及可以对这些数据施加的操作(表示对象的动态行为),封装在一起所构成的统一体。对象之间通过传递消息互相联系,以模拟现实世界中不同事物彼此之间的联系。面向对象的设计方法与传统的面

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。