- 1
- 0
- 约1.7万字
- 约 87页
- 2017-06-10 发布于北京
- 举报
第2章 面向对象技术 2.1 面向对象技术 2.2 小结 习题 2.1 面向对象技术和Windows编程 2.1.1 面向对象和面向过程 面向对象程序设计技术(objectoriented 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) 抽象 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意
您可能关注的文档
- 第2章Flash动画的前期准备 (2).ppt
- 第2章JSP页面制作基础.ppt
- 第2章VB6.0语言基础.ppt
- 第2章体育市场营销.ppt
- 第2章公司理财的价值观.ppt
- 第2章国际货物的名称、品质、数量和包装[1].ppt
- 第2章市场调查方案的设计.ppt
- 第2章应变式传感器.ppt
- 第2章教学设计艺术.ppt
- 第2章微处理器及其结构-1.ppt
- 克林贝格锥齿轮技术BC12 B27 CS200 说明书用户手册.pdf
- Fengfei广告系统说明书用户手册.pdf
- Megawin兆威8051-Based MCU品类信息型号信息用户手册.pdf
- Microchip Technology Company串行四I O(SQI)闪存SST26VF016 SST26VF032数据手册.pdf
- 英克司兰中文名称品类信息型号信息说明书用户手册.pdf
- Easecurities易盛证券金融 证券5.3用户手册.pdf
- SLAMTEC用户手册S1用户手册.pdf
- Wanda Information Co., Ltd. 用户手册 说明书 三次修订稿 说明书用户手册.pdf
- Wanda Info. 说明书四次修订稿用户手册.pdf
- BOSCH CAN FD协议模块 CAN FD 说明书用户手册.pdf
最近下载
- 乐购Hymall连锁超市-收银员排班工具使用作业规范.pdf VIP
- 黑龙江省教育学会示范性高中专业委员会2025届高三下学期第一次模拟考试 语文 含答案.docx VIP
- ISPE第五部分试车与确认课件.pptx VIP
- 【2026年春新教材】部编版小学二年级下册道德与法治全册教案(教学设计).docx
- 数学北师大版八年级下册多边形的内角和教学设计.docx VIP
- 守正创新担使命,凝心聚力启新程——校长在2026年春季学期全体教师开学大会上的讲话.docx
- 《体育课程与教学论》全套PPT课件.pptx VIP
- 第一章税收初阶资料.ppt VIP
- 数据接口安全管理制度.docx VIP
- 道路车辆 电气及电子设备的环境条件和试验 第3部分:机械负荷.docx VIP
原创力文档

文档评论(0)