(精品)1章_面向对象程序设计概论.ppt
《(精品)1章_面向对象程序设计概论.ppt》由会员分享,可在线阅读,更多相关《(精品)1章_面向对象程序设计概论.ppt(35页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第一章 面向对象程序设计概论1.1 OOP(Object-OrientedOOP(Object-Oriented Programming)Programming)的的基基本思想和有关概念本思想和有关概念1.1.1 面向过程程序设计与面向对象程序设计面向过程程序设计与面向对象程序设计1.1.2 面向对象程序设计的有关概念面向对象程序设计的有关概念1.2 C+对对OOP方法的支持方法的支持1.3C+对对C语言的改进语言的改进1.4C+程序的编辑、编译和运行程序的编辑、编译和运行1.5C+程序结构的特点程序结构的特点1.6 Visual C+程序运行步骤程序运行步骤小结小结1.1.1 面向过程与面向
2、对象程序设计面向过程与面向对象程序设计例例1.11.1:输入任意短语或句子,计算短语包含多少个字:输入任意短语或句子,计算短语包含多少个字(word)(word)和字和字符符(character)character)。注意:输入短语时,字和字之间只注意:输入短语时,字和字之间只能能空一格。空一格。#include /面向过程程序面向过程程序void main()char ch;int wdcount,chcount;wdcount=1;chcount=0;printf(*:Please input any phrase:n);while(ch=getchar()!=n)chcount+;if(
3、ch=)wdcount+;printf(n*:The number of word is%dn,wdcount);printf(n*:The number of word is%dn,wdcount);printf(n*:The number of char is%dn,chcount);printf(n*:The number of char is%dn,chcount);*Please input any phrase.I am a teacher.*:The number of word is 4*:The number of char is 151.1.1 面向过程与面向对象程序设计面
4、向过程与面向对象程序设计(续续1)void main()count A;/定义对象定义对象 A.process();/调用公有成员函数调用公有成员函数 A.display();面向对象程序设计方法面向对象程序设计方法1.1.1 面向过程与面向对象程序设计面向过程与面向对象程序设计(续续2)#include#include using namespace std;class count /定义类定义类public:/公有成员公有成员 count();/构造函数构造函数 void process();/成员函数成员函数 void display();private:/私有成员私有成员 int wd
5、count,chcount;/数据成员数据成员;count:count()wdcount=1;chcount=0;1.1.1 面向过程与面向对象程序设计面向过程与面向对象程序设计(续续3)void count:process()/成员函数的实现成员函数的实现 char ch;cout*:Please input any phraseendl;while(ch=getchar()!=n)chcount+;if(ch=)wdcount+;coutendl;void count:display()coutn*:number of word is wdcountendl;printf(*:number
6、 of char is%dn,chcount);1.1.1 面向过程与面向对象程序设计面向过程与面向对象程序设计(续续4)是一种数学思维或计算是一种数学思维或计算机思维方法,与人们认机思维方法,与人们认识世界的方法不同识世界的方法不同以不稳定的、多变的以不稳定的、多变的“过程过程”和和“操作操作”为中为中心来构造系统心来构造系统可重用性较差可重用性较差是建立在认识方法学基是建立在认识方法学基础上的一项技术科学,础上的一项技术科学,比较自然地模拟了人类比较自然地模拟了人类认识客观世界的方式;认识客观世界的方式;以相对稳定的以相对稳定的“对象对象”和和“数据结构数据结构”为中心为中心来构造系统来构
7、造系统可重用性较好可重用性较好面向过程程序设计面向对象程序设计1.1.1 面向过程与面向对象程序设计面向过程与面向对象程序设计(续续5)面向过程程序设计程序程序=(算法)(算法)+(数据结构(数据结构)面向对象程序设计程序程序=(算法(算法+数据结构)数据结构)P1P2P3P4P5O1O2O3O4O5P61.1.1 面向过程与面向对象程序设计面向过程与面向对象程序设计(续续6)面向过程程序设计面向对象程序设计P1P2P3P5O1O2O3O4O5P6O41.1.1 面向过程与面向对象程序设计面向过程与面向对象程序设计(续续7)消息传递消息传递机制机制面向过程程序设计面向对象程序设计参数参数 f1
8、()()返回值返回值过程过程1参数参数 f2()()返回值返回值过程过程2参数参数 f3()()返回值返回值过程过程3数据数据1数据数据2数据数据3数据数据4数据数据5消息消息1MF2对象对象1MF4MF3MF2MF1对象对象2MF4MF3MF1消息消息21.1.1 面向过程与面向对象程序设计面向过程与面向对象程序设计(续续8)面向过程的方法面向过程的方法:结构化程序设计思想为使用面向过程的方法结构化程序设计思想为使用面向过程的方法解决复杂问题提供了有力的手段解决复杂问题提供了有力的手段.结构化程序设计思路结构化程序设计思路:自顶向下划分模块自顶向下划分模块,直到直到最底层的每个模块都是完成单
9、一独立的功能为止最底层的每个模块都是完成单一独立的功能为止;将这些函数模块装配起来即实现编程的任务将这些函数模块装配起来即实现编程的任务.数据和处理数据的方法是分开完成的数据和处理数据的方法是分开完成的.1.1.1 面向过程与面向对象程序设计面向过程与面向对象程序设计(续续9)面向对象的方法面向对象的方法:(1)将数据及对数据的操作方法放在一起将数据及对数据的操作方法放在一起,作作为对象为对象;(2)对同类型对象抽象出其共性,形成类对同类型对象抽象出其共性,形成类;(3)类中数据用本类的方法进行处理类中数据用本类的方法进行处理;(4)类通过一个简单的外部接口与外界发生类通过一个简单的外部接口与
10、外界发生关系,对象与对象之间通过消息进行通信关系,对象与对象之间通过消息进行通信.1.1.2 面向对象程序设计的有关概念面向对象程序设计的有关概念一、对象与抽象一、对象与抽象二、类二、类三、封装三、封装四、继承四、继承五、多态五、多态一、对象与抽象一、对象与抽象1、对象、对象对象是现实世界中实际存在的一个事物,如:一对象是现实世界中实际存在的一个事物,如:一本书、一台电脑本书、一台电脑对象是面向对象程序设计的核心概念,从现实事对象是面向对象程序设计的核心概念,从现实事物中抽象出来,对象具有:物中抽象出来,对象具有:(1)属性属性:状态和外貌特征状态和外貌特征 用数据表示用数据表示(2)方法方法
11、:行为行为 用程序代码表示用程序代码表示 对象对象=(算法算法+数据结构数据结构)程序程序=(对象对象1+对象对象2+对象对象3)一、对象与抽象(续一、对象与抽象(续1)2、抽象、抽象抽象是对现实世界中的实体进行归类、简化的描述,抽象是对现实世界中的实体进行归类、简化的描述,即模型化即模型化;是通过从特定的实例中抽取共同的性质以是通过从特定的实例中抽取共同的性质以形成一般化的概念的过程;形成一般化的概念的过程;抽象代表着一个对象的抽象代表着一个对象的本质特征本质特征,这个特征将该对象,这个特征将该对象与所有其他种类的对象区别开来;与所有其他种类的对象区别开来;抽象具有抽象具有层次层次;汽车汽车
12、轮船轮船飞机飞机交通工具交通工具二、类 类是面向对象程序设计类是面向对象程序设计封装的基本单元封装的基本单元,封装了逻辑,封装了逻辑上相关的函数与数据;上相关的函数与数据;类是创建类是创建对象的样板对象的样板,是所有对象的是所有对象的共同的行为共同的行为和和不不同的状态同的状态的集合体;的集合体;类包含了对所创建对象的类包含了对所创建对象的状态描述和方法状态描述和方法的定义。类的定义。类的完整描述包含了外部接口和内部算法以及数据结构的形的完整描述包含了外部接口和内部算法以及数据结构的形式;式;类是对问题的类是对问题的抽象抽象描述,是描述,是对象的抽象。对象的抽象。类类由由struct类型类型引
13、申而来,并将引申而来,并将数据和处理数据的数据和处理数据的函数函数捆绑在一起。捆绑在一起。例例1-2 结构体引申为类结构体引申为类struct Complex1/结构体结构体 double real,imag;class Complex2/类类 private:double real,imag;/数据成员数据成员 public:void Set(double r,double i)/成员函数成员函数 real=r;imag=i;void main()Complex1 x;x.real=100;Complex2 a,b;/a、b是是Complex2类的实例变量类的实例变量 a.Set(4.0,6
14、.0);/调用成员函数来实现消息发送调用成员函数来实现消息发送 b.Set(4.0,6.0);/同一消息可发向多个对象同一消息可发向多个对象三、封装三、封装数据封装:数据封装:将数据和处理数据的方法包装成一个整体,将数据和处理数据的方法包装成一个整体,并并将具体实现细节的数据信息和操作方法在结构上隐藏将具体实现细节的数据信息和操作方法在结构上隐藏起来;起来;信息隐藏:信息隐藏:将一个模块的细节部分对用户隐藏起来,用将一个模块的细节部分对用户隐藏起来,用户只能通过一个户只能通过一个受保护的接口受保护的接口来访问某个模块,而不能来访问某个模块,而不能直接访问一个模块内部的细节;直接访问一个模块内部
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精品 面向 对象 程序设计 概论
限制150内