第2讲 面向对象技术.ppt

  1. 1、本文档共87页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 面向对象技术 2.1 面向对象技术 2.2 小结 习题 2.1 面向对象技术和Windows编程 2.1.1 面向对象和面向过程 面向对象程序设计技术(objectoriented programming,OOP)是目前流行的系统设计开发技术,它包括面向对象分析和面向对象程序设计。面向对象程序设计技术的提出,主要是为了解决传统程序设计方法——结构化程序设计所不能解决的代码重用问题。 结构化程序设计(structured programming,SP)从系统功能入手,按照工程的标准和严格的规范将系统分解成若干功能模块,系统是实现模块功能的函数和过程的集合。由于用户的需求和软、硬件技术的不断发展变化,按照功能划分设计的系统模块必然是易变和不稳定的。这样开发出来的模块可重用性不高。 面向对象程序设计从所处理的数据入手,以数据为中心而不是以功能为中心来描述系统。它把编程问题视为一个数据集合,数据相对于功能而言,具有更强的稳定性。 面向对象程序设计同结构化程序设计相比,最大的区别就在于,前者首先关心的是所要处理的数据,而后者首先关心的是功能。 面向对象程序设计是一种围绕真实世界的概念来组织模型的程序设计方法,它采用对象来描述问题空间的实体。关于对象这一概念,目前还没有统一的定义,一般认为,对象是包含现实世界物体特征的抽象实体,它反映了系统为之保存信息和与它交互的能力。它是一些属性及服务的一个封装体,在程序设计领域,可以用“对象=数据+操作”这一公式来表达。 一个简单的C++程序的例子 面向过程的程序设计方法 #include stdio.h int add (int a,int b) { return a+b; } void main(void) { int x,y,sum; scanf(“%d%d”,x,y); sum=add(x,y); printf(“%d”,sum); } 面向过程的程序设计方法 (1)数据与操作这些数据的代码(函数)分离,一旦数据改变(如整数→实数)则需要重新编写函数,程序功能扩充时,需要大量修改函数。以函数方式实现代码重用,效率低,是手工作坊式的编程。 (2)“数据”和过程分离,以过程为中心,数据的一致性很难保证。 例如:y1=a+f(x) y2=f(x)+a 若f(x)含有对a的操作,则y1与y2不同,顺序的不同可能造成结果不同,很不自然。 (3)最大的缺点是不支持代码重用的机制,某个模块只能在某个环境中起作用。 面向对象的程序设计方法 应用实例:计算两数之和 流程: (1)定义一个“加”类——数据抽象描述出各种类型数相加的操作。 (2)定义出一个对象(代表本次计算)并对它赋值。 (3)产生消息-将两个数相加 (4)产生消息-显示总和值 #include iostream.h class AddClass { public: void Add(int x,int y) { sum=x+y; } void Add(float x,float y) {sumf=x+y;} void printSum(int flag) {coutTotal Sum=sumendl; } void printSum(float flag) { coutTotal Sum2=sumfendl; } private: int sum; float sumf; }; void main(void) { AddClass addobj; //定义出对象 addobj.Add(1,2); //产生二数相加消息 addobj.Add(3.4f,4.5f); addobj.printSum(1); //产生显示总和消息 addobj.printSum(1.0f); } 类是具有相同操作功能和相同数据格式的对象的集合。类可以看作抽象数据类型的具体实现。数据类型是指数据的集合和作用于其上的操作的集合,而抽象数据类型不关心操作实现的具体细节。从外部来看,类型的行为可以用新定义的操作加以规定。类为对象集合的抽象,它规定了这些对象的公共属性和方法,对象为类的一个实例。打个比方来说,苹果是一个类,而放在桌上的那一个苹果则是一个对象; 再如,人是一个类,具体到“张三”这个人,则是人类的一个对象。对象和类是OOP的最基本的概念,其关系相当于一般的程序设计语言中变量和变量类型的关系。 数据类型 2、面向对象的编程方法具有四个基本特征 (1) 抽象 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档