面向对象技术基础

面向对象技术基础

ID:39749844

大小:287.00 KB

页数:75页

时间:2019-07-10

面向对象技术基础_第1页
面向对象技术基础_第2页
面向对象技术基础_第3页
面向对象技术基础_第4页
面向对象技术基础_第5页
资源描述:

《面向对象技术基础》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第2章面向对象技术基础2.1面向对象概述2.2对象2.3面向对象方法学概述2.4对象模型2.5小结2.1面向对象概述2.1.1传统软件开发方法存在的问题传统的生命周期软件开发方法学主要存在下列问题:(1)软件重用性差(2)软件可维护性差(3)开发出的软件不能满足用户需要2.1.2面向对象的基本概念(1)对象:现实世界中客观存在的事物都被称之为对象。对象不仅能表示具体的事物,还能表示抽象的规则、计划或事件,如旅游、球赛等都是对象。(2)对象的状态和行为:对象具有属性(或状态),一个对象用数据值来描述它的状态。对象还有操作(或行为、方法、算法、服务、函数)。操作用于改变对象的状态。对

2、象由对象名、属性、操作组成。对象实现了数据和操作的集成,使数据和操作封装于对象的统一体中。(3)类:类是具有相同或相似性质的对象的抽象。因此,对象的抽象是类,类的具体化就是对象,也说类的实例是对象。类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。类具有操作,它是对象的行为的抽象,用操作名和实现该操作的算法来描述。类由类名、属性、操作组成。(4)消息和方法:对象之间进行的通信叫做传递消息。在对象的操作中,当一个消息发送给某个对象时,消息包含接收对象去执行某种操作的信息。发送一条消息至少要包括说明接受消息的对象名、发送给该对象的消息名(即对象名、方法名)。一般还要对参数加

3、以说明,参数应该是认识该消息的对象所知道的变量名。类中操作的实现过程经常称为方法,一个方法有方法名、参数、方法体。(5)封装:对象的封装就是把对象包起来,使外界只能看到对象的接口,而不能知道对象内部的具体内容。一个对象的数据其它对象不能直接访问,一个对象的操作其它对象也不能直接使用。封装性主要表现在如下两个方面:①有固定的接口。这些接口规定了对象接受消息的格式,其它对象只有通过这些接口才能向这个对象发送消息。②保护内部实现。所有私有数据和私有操作都被封装在对象内部,其它对象不能直接访问。封装性是保证软件部件具有优良的模块性的基础,对外界隐蔽了实现细节,有效地实现了信息隐蔽。面向对

4、象的类是封装良好的模块。(6)继承:继承是子类自动共享基类属性和操作的机制,这是类之间的一种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。继承具有传递性,如果类C继承类B,类B又继承类A,则类C也继承了类A。一个类实际上可以继承它上层的所有基类的属性和操作。在类层次中,子类只继承一个基类的属性和操作,则称为单重继承。在类层次中,子类继承了多个基类的属性和操作,则称为多重继承。类的继承性提高了软件的重用性。(7)多态:多态性指相同的操作可作用于多种类型的对象上并获得不同的结果。不同的对象,收

5、到同一消息可以产生不同的结果,这种现象称为多态性。多态性允许每个对象以适合自身的方式去响应共同的消息。多态性增强了软件的灵活性,减少了信息冗余,提高了软件的重用性和可扩充性。(8)重载:重载是指同一个操作名,对于不同的参数结构,可以执行不同的操作。重载提高面向对象系统的灵活性和可读性。2.2对象2.2.1一个对象实例对象把它的内部数据和功能的实现封装起来,它向外界开放的操作就如录音机上的按键,对象A只有通过对象B的接口才能向对象B发送消息。对象中对外开放的操作就像录音机上的按键,使用者只需要知道操作的名字(如录音机的功能名)和需要的参数(如录音机中听某首歌曲,歌曲在磁带中的位置)

6、,使用者不需要知道这些操作的具体实现方法(就如使用录音机录音,不需要知道具体实现的电路)。对象的使用者也不需要知道对象内部的具体实现和数据内容。对象的模型如图2.3所示,对象的属性数据是封装的,对象中实现功能的操作(算法)也是封装的,n个功能接口是对象的对外界面,其它对象根据接口的名称和参数向该对象发送消息。对象有力支持了抽象、信息隐蔽、模块化、局部化等软件工程基本原则。对象是属性数据和操作的封装。对象=对象名+操作集合+数据集合+对外接口集合2.2.2对象的定义对象是封装了数据,并且封装了对数据的操作的模块,这个模块有惟一的名字,有公开的对外接口。对象中的数据值表示了对象所处的

7、状态,对象的状态是可以变化的,一个对象的状态只能由该对象自己的操作改变。当一个对象收到其他对象的消息时,执行对应的操作,同时改变自身的状态。2.2.3对象的特点(1)独立性:对象是数据和对数据所有操作的统一体,对象经过消息接收、操作处理、变换对象状态,最后完成消息所指定的处理任务。对象自身状态的变化,完全取决于自身的操作(2)封闭性:对象以数据为中心。对象的数据被封装在对象的内部,外面是看不见的(3)交互性:交互性是指对象之间具有通信能力,对象之间通过互相发送消息进行通信。通过定

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

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

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