欢迎来到天天文库
浏览记录
ID:59490236
大小:242.00 KB
页数:49页
时间:2020-09-13
《第8章面向对象程序设计ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第八章面向对象程序设计8.1面向对象程序设计概述8.2类和对象8.3继承和派生8.4多态性8.5程序举例8.1面向对象程序设计(OOP)概述基本概念ObjectOrientedProgramming对象:现实世界的实体,每个对象都有所属的类类:对一组对象共同具有的属性和行为的抽象,具有封装和隐藏性、还具有继承性。消息:向某对象请求服务的一种表达方式,是对象与外界、对象与其它对象之间联系的工具方法:对某对象接受消息后所采取的操作的描述。特点封装性继承性多态性C++中,通过类和对象实现对数据的封装,使得程序的修改维护更方便。是OOP的基础。连接类与类的层次模型,利用现
2、有类派生出新类的过程称为类继承,支持代码重用、提供了无限重复利用程序资源的途径、节省程序开发的时间和资源,是OOP的关键。发出同样的消息被不同类型的对象接收时导致完全不同的行为,是OOP的重要补充8.2类和对象#include"iostream.h"classCircle{private:doublex,y,r;public:voidprint(){cout<<"圆心:("<3、;voidmain(){Circlep;p.set(0,0,2);p.print();}引例类定义数据成员成员函数定义类对象对对象调用成员函数Circle类将圆的属性(圆心坐标和半径)和操作(print、set)封装在一起上述定义的Circle类实际上也相当于一种新的数据类型,包含了数据和对数据的操作,其成员描述如下:数据成员成员函数名称含义名称功能x圆心坐标x值set设置数据成员值y圆心坐标y值print输出数据成员值r圆半径8.2.1类的定义类是一种复杂的数据类型,它是将不同类型的数据和与这些数据相关的运算封装在一起的集合体,类的结构是用来确定一类对象的行为,而4、这些行为是通过类的内部数据结构和相关的操作来确定的。定义格式:class类名{public:<成员函数或数据成员的说明>;private:<成员函数或数据成员的说明>;protected:<成员函数或数据成员的说明>;};<各成员函数的实现>类的说明类的说明类的说明类的说明实现部分定义类的关键字说明部分实现部分访问权限修饰符说明:定义包括说明部分和实现部分。若成员函数在说明部分已定义,则实现部分可省略。访问权限修饰符:public(公有)、private(私有)和protected(保护)缺省时为private。公有成员通常为成员函数,可在程序中引用,私有成员通常是5、数据成员,只有成员函数或友元函数才可引用。类体中不允许对数据成员初始化。自身类的对象不可以作为自己的成员classB{private:intyear=2002,month=10,day=12;Bb;……};错数据成员成员函数名称含义名称功能name职员姓名set设置数据成员值sex职员性别display输出数据成员值wage职员工资如,定义一个职工类,该类是对所有职工某些信息的抽象,包括如下成员:classStaff{private:charname[30];charsex;floatwage;public:voiddisplay();voidset(char*n,6、chars,floatw);};voidStaff::display(){cout<7、成员引用一般对象成员数据成员:成员函数:<对象名>.<成员名>(<参数表>)指向对象的指针的成员表示法:数据成员:成员函数:对象名.成员名对象名.成员名(参数表)对象指针名->成员名(*对象指针名).成员名或对象指针名->成员名(参数表)(*对象指针名).成员名(参数表)引用方式同结构成员#include"iostream.h"#include"string.h"classStaff{private:charname[30];charsex;floatwage;public:voiddisplay(){cout<
3、;voidmain(){Circlep;p.set(0,0,2);p.print();}引例类定义数据成员成员函数定义类对象对对象调用成员函数Circle类将圆的属性(圆心坐标和半径)和操作(print、set)封装在一起上述定义的Circle类实际上也相当于一种新的数据类型,包含了数据和对数据的操作,其成员描述如下:数据成员成员函数名称含义名称功能x圆心坐标x值set设置数据成员值y圆心坐标y值print输出数据成员值r圆半径8.2.1类的定义类是一种复杂的数据类型,它是将不同类型的数据和与这些数据相关的运算封装在一起的集合体,类的结构是用来确定一类对象的行为,而
4、这些行为是通过类的内部数据结构和相关的操作来确定的。定义格式:class类名{public:<成员函数或数据成员的说明>;private:<成员函数或数据成员的说明>;protected:<成员函数或数据成员的说明>;};<各成员函数的实现>类的说明类的说明类的说明类的说明实现部分定义类的关键字说明部分实现部分访问权限修饰符说明:定义包括说明部分和实现部分。若成员函数在说明部分已定义,则实现部分可省略。访问权限修饰符:public(公有)、private(私有)和protected(保护)缺省时为private。公有成员通常为成员函数,可在程序中引用,私有成员通常是
5、数据成员,只有成员函数或友元函数才可引用。类体中不允许对数据成员初始化。自身类的对象不可以作为自己的成员classB{private:intyear=2002,month=10,day=12;Bb;……};错数据成员成员函数名称含义名称功能name职员姓名set设置数据成员值sex职员性别display输出数据成员值wage职员工资如,定义一个职工类,该类是对所有职工某些信息的抽象,包括如下成员:classStaff{private:charname[30];charsex;floatwage;public:voiddisplay();voidset(char*n,
6、chars,floatw);};voidStaff::display(){cout<7、成员引用一般对象成员数据成员:成员函数:<对象名>.<成员名>(<参数表>)指向对象的指针的成员表示法:数据成员:成员函数:对象名.成员名对象名.成员名(参数表)对象指针名->成员名(*对象指针名).成员名或对象指针名->成员名(参数表)(*对象指针名).成员名(参数表)引用方式同结构成员#include"iostream.h"#include"string.h"classStaff{private:charname[30];charsex;floatwage;public:voiddisplay(){cout<
7、成员引用一般对象成员数据成员:成员函数:<对象名>.<成员名>(<参数表>)指向对象的指针的成员表示法:数据成员:成员函数:对象名.成员名对象名.成员名(参数表)对象指针名->成员名(*对象指针名).成员名或对象指针名->成员名(参数表)(*对象指针名).成员名(参数表)引用方式同结构成员#include"iostream.h"#include"string.h"classStaff{private:charname[30];charsex;floatwage;public:voiddisplay(){cout<
此文档下载收益归作者所有