面向对象技术概述

上传人:夏** 文档编号:547281545 上传时间:2023-02-11 格式:DOCX 页数:4 大小:9.92KB
返回 下载 相关 举报
面向对象技术概述_第1页
第1页 / 共4页
面向对象技术概述_第2页
第2页 / 共4页
面向对象技术概述_第3页
第3页 / 共4页
面向对象技术概述_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《面向对象技术概述》由会员分享,可在线阅读,更多相关《面向对象技术概述(4页珍藏版)》请在金锄头文库上搜索。

1、面向对象技术概述1.1知识要点1. 面向对象技术的基本概念面向对象技术是以对象为基础、以事件或者消息来驱动对象执行处理的程序设计 技术。对象是包含客观事物特征的抽象实体,是属性和行为的封装体。在程序设计领域, 可以用“对象=数据+作用于这些数据上的操作”这一公式来表达。类是对具有相同属性和行为的一组对象的抽象描述。事件是系统产生的动作或是运行应用程序产生的动作。事件通过消息描述,消息 是描述事件发生的信息。消息是对象间交互的手段,是要求某个对象执行某个操作的规格说明。2. 面向对象技术的基本特征抽象性是指忽略事物中与当前目标无关的非本质特征,而强调本质特征的特征。封装性是指把对象的属性和行为封

2、装在一起,并尽可能隐藏对象的内部细节的 特征。继承性是指特殊类的对象拥有其一般类的属性和行为的类与类之间层次关系的 特征。多态性是指不同对象收到相同消息时可以产生多种不同的行为方式的特征。【重点】面向对象技术的概念。类与对象的概念及关系。面向对象与面向过程程序设计的区别。 面向对象技术的基本特征。【难点】类与对象的概念。面向对象与面向过程程序设计的区别。面向对象技术的基本特征。1.2习题解答1. 什么是面向对象技术?【问题解答】面向对象技术是一种以对象为基础,以事件或消息来驱动对象执行处理的程序设计 技术。它具有抽象性、封装性、继承性及多态性。2. 面向对象与面向过程程序设计有什么不同?【问题

3、解答】面向对象与面向过程程序设计有如下不同:(1) 面向过程程序设计方法采用函数(或过程)来描述对数据的操作,但又将函数 与其操作的数据分离开来;面向对象程序设计方法将数据和对数据的操作封装在一起, 作为一个整体来处理。(2) 面向过程程序设计方法以功能为中心来设计功能模块,难于维护;而面向对象 程序设计方法以数据为中心来描述系统,数据相对于功能而言具有较强的稳定性,因此 更易于维护。(3) 面向过程程序的控制流程由程序中预定顺序来决定;面向对象程序的控制流程 由运行时各种事件的实际发生来触发,而不再由预定顺序来决定,更符合实际需要。(4) 面向对象程序设计方法可以利用框架产品(如 MFC,M

4、icrosoft Foundation Classes)进行编程。3 .面向对象技术有哪些优点?【问题解答】面向对象技术具有程序结构清晰,自动生成程序框架,实现简单,可有效地减少程 序的维护工作量,代码重用率高,软件开发效率高等优点。4. 面向对象技术中的封装性有何优缺点?如何克服这些缺点?【问题解答】封装将对象有关的数据和行为封装成整体来处理,使得对象以外的部分不能随意存 取对象的内部属性,从而有效地避免了外部错误对它的影响,大大减小了查错和排错的 难度。另一方面,当进行修改对象内部时,由于只有少量的外部接口对外提供服务,因 此同样减小了内部的修改对外部的影响。如果一味地强调封装,对象的任何

5、属性都不允许外部直接存取,则要增加许多没有 其他意义、只负责读或写的行为。这会为编程工作增加负担,增加运行开销,并且使程 序显得臃肿。为了避免这一点,在程序的具体实现过程中应使对象有不同程度的可见性, 进而与客观世界的具体情况相符合。5. 为什么要应用继承机制?【问题解答】客观事物既有共性,也有特性。如果只考虑事物的共性,而不考虑事物的特性,就 不能反映出客观世界中事物之间的层次关系。抽象机制是考虑事物的共性,继承机制是 考虑事物的特性,这样才能完整地描述客观世界的层次关系。继承能使软件模块具有可 重用性、独立性,缩短软件开发周期,提高软件开发效率,同时使软件易于维护。6. C+对多态性的支持

6、体现在哪些方面?【问题解答】C+的多态性分为编译时多态和运行时多态。编译时多态是指在程序的编译阶段由 编译系统根据参数确定与哪个同名的函数相联系;运行时多态是指在程序的运行阶段才 根据产生的信息确定需要调用哪个同名的函数。C+通过函数重载和运算符重载实现编 译时多态,通过继承和虚函数来实现运行时多态。7. 目前常用的面向对象程序设计语言有何异同?【问题解答】目前常用的面向对象程序设计语言有C+、Java、Visual Basic等。C+是混合型面 向对象程序设计语言,继承并改进了C语言,是一种既支持面向对象又支持面向过程的 程序设计方法。Java是纯面向对象程序设计语言,从C+发展而来。C+和

7、Java均支持 面向对象技术的基本概念和基本特征,如封装、类、构造函数、析构函数、继承、多 态等。C+与Java语法描述有相同之处,也有不同之处。如基本结构语句的语法大致相同, 而类定义的语法等方面则不相同。此外还有以下不同:(1) C+有运算符重载机制,而Java没有此特性;(2) C+支持多重继承,而Java只支持单重继承;(3) C+通过构造函数创建对象,可以直接使用指针来操作对象的成员,而Java通 过new运算符创建对象,通过new运算符返回的对象引用来使用对象,而不是直接操作 指针;(4) C+程序要显式地释放所分配的内存,而Java具有内存垃圾收集机制,自动管 理内存,不需要显式

8、释放所分配的内存。Visual Basic继承了 BASIC语言所具有的语法简单、容易学习、容易使用、数据处 理能力强的特点,又引入了面向对象、事件驱动的编程机制和可视化程序设计方法,大 大降低了开发Windows应用程序的难度,有效地提高了应用程序开发的效率。但是, Visual Basic存在语法不严格、开发出的系统稳定性较低的缺点。相对C+来说,Visual Basic面向系统底层的编程能力有限。8 .什么是,NET?【问题解答】,NET是一种面向网络、支持各种用户终端的开发平台。它定义了一种公用语言子集(Common Language Subset, CLS),为符合其规范的语言与类库之间提供无缝集成的混 合语言。.NET统一了编程类库,提供了对下一代网络通信标准可扩展标记语言(extensible Markup Language,XML)的完全支持,使应用程序的开发变得更容易、更 简单。所以.NET就是Microsoft的XML Web服务平台,不论操作系统或编程语言有何 差别,XML Web服务均能使应用程序在Internet上传输和共享数据。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号