面向对象的程序设计语言ppt课件.ppt

面向对象的程序设计语言ppt课件.ppt

ID:58900603

大小:334.00 KB

页数:171页

时间:2020-09-29

面向对象的程序设计语言ppt课件.ppt_第1页
面向对象的程序设计语言ppt课件.ppt_第2页
面向对象的程序设计语言ppt课件.ppt_第3页
面向对象的程序设计语言ppt课件.ppt_第4页
面向对象的程序设计语言ppt课件.ppt_第5页
资源描述:

《面向对象的程序设计语言ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三章面向对象的程序设计本章导读掌握类与对象的概念,类与对象的定义方法及二者间的区别。掌握类的成员函数的定义方法、保存方法及调用方法。掌握类中成员的访问机制和方法。了解对象的作用域和生存期。理解并掌握构造函数、析构函数、拷贝构造函数、默认构造函数和缺省参数的构造函数的含义、定义方法以及在对象的构造和撤消中的作用。理解并掌握当一个类的对象作为另一个类的数据成员时,利用初始化表调用构造函数的方法、构造函数的执行顺序。1本章导读理解继承的概念和意义,理解单一继承、多重继承。理解并掌握派生类构造函数的编写要求,以及派生类对象的构造过程和机理。掌握虚函数和多态性的概念,掌握虚函数的

2、定义方法、调用方法及其在实现多态性方面所起到的作用。了解纯虚函数与抽象基类的概念。了解类的静态成员(静态数据成员和静态成员函数)的概念、定义方法及其作用。了解友元函数与友元类的概念、定义方法及其作用。了解运算符重载及在程序中实现运算符重载的方法。了解模板的概念,在程序中如何定义类模板和函数模板。23.1类与对象的定义类和对象是面向对象程序设计(OOP)的两个最基本概念。所谓对象就是客观事物在计算机中的抽象描述;类是对具有相似属性和行为的一组对象的统一描述。3.1.1类的定义C++的类是在结构体的基础上扩充而来的。类是把各种不同类型的数据(称为数据成员)和对数据的操作(成员

3、函数)组织在一起而形成的用户自定义的数据类型。C++中,类定义包括类说明和类实现两大部分。说明部分提供了对该类所有数据成员和成员函数的描述,而实现部分提供了所有成员函数的实现代码。33.1类与对象的定义类定义的一般形式为:class类名{private:数据成员或成员函数protected:数据成员或成员函数public:数据成员或成员函数};<各成员函数的实现代码>43.1类与对象的定义说明:1.class是定义类的关键字,类名由用户自己定名,必须是C++的有效标识符,但一般首字母大写。2.大括号的部分是类的成员(数据成员和函数成员),它们分成三部分,分别由privat

4、e、public、proctected三个关键字后跟冒号来指定。这三部分可以任何顺序出现,且在一个类的定义中,这三部分并非必须同时出现。(1)如果数据成员或成员函数在类的private部分,那么在类之外是不能存取的,只有类中的成员函数才能存取private的数据成员和成员函数。(2)在一个类的public部分说明的数据成员或成员函数可被程序中的任何函数或语句存取,public成员多为成员函数,用来提供一个与外界的接口,外界只有通过这个接口才可以实现对private成员的存取。53.1类与对象的定义(3)在类的protected部分说明的数据成员和成员函数是不能在类之外存取

5、的,只有类的成员函数及其子类(派生类)可以存取protected的成员。(4)当定义类时,当未指明成员是哪部分时,默认是属于private成员,但一般不要采用默认形式。如:下例中定义描述图书的类定义classRecord{private://private成员charbookname[20];//数据成员bookname,//用于表示图书的名称intnumber;//数据成员number,表示图书编号63.1类与对象的定义public://public成员voidregist(char*a,intb);//成员函数regist,用于给//各数据成员赋值voidshow()

6、;//成员函数show,显示各数据成员的值};要特别注意,在类的定义中,类的说明部分的右边大括号后面必须有一“;”.根据类的定义,可看出:类是实现封装的工具,所谓封装就是将类的成员按使用或存取的方式分类,有条件地限制对类成员的使用,而封装是通过public和private与成员函数实现的。private的成员构成类的内部状态,public的成员则构成与外界通信的接口,通过public的成员函数来使用private的数据成员,从而在C++中实现了封装。73.1类与对象的定义3.1.2成员函数的定义类中的成员函数可以在以下两处定义:(1)将成员函数的定义直接写在类中:如:对于

7、前面定义的图书类Record来说,其成员函数regist和show的定义可直接写在类的定义体中。classRecord{private:charbookname[20];intnumber;83.1类与对象的定义public:voidregist(char*a,intb)//成员函数regist()的定义{strcpy(bookname,a);//给数据成员bookname赋值number=b;//给数据成员number赋值}voidshow()//成员函数show()的定义{cout<<”名称:”<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。