欢迎来到天天文库
浏览记录
ID:37927160
大小:76.50 KB
页数:14页
时间:2019-06-02
《c++面向对象教案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第三章面向对象程序设计基础河北经贸大学信息技术学院VC++系统开发本章教学目标理解类与对象的基本概念,熟练掌握类与对象的定义,对象的引用方法。掌握构造函数和析构函数的定义和使用方法理解基类和派生类概念,掌握派生类的定义方法。多重继承及其应用理解虚拟基类的概念,掌握虚拟基类的使用方法理解指向对象指针、this指针理解多态性和动态联编概念,用虚函数实现多态熟悉友元函数、友元类;了解类模板及其应用。面向对象程序设计的应用本章主要内容面向对象的方法类定义和声明构造函数与析构函数静态类成员友元与友元类继承与派生多态性类模板面向对象程序设计回顾:面
2、向过程的设计方法特点:自顶向下,逐步求精——功能分解。重点:如何实现细节过程,将数据与函数分开。形式:主模块+若干个子模块(main()+子函数)。缺点:效率低,程序的可重用性差。程序=算法+数据结构机制:将解决问题的重点放在如何实现细节过程方面,将数据与操作这些数据的函数分开,围绕功能实现或操作流程来设计程序。形式:主模块+若干个子模块(main()+子函数)它们之间以数据作为连接特点:自顶向下,逐步求精——功能分解程序=算法+数据结构缺点:由于数据与操作这些数据的代码(函数)相分离,一旦数据改变,则需要重新编写函数。程序功能扩充时,
3、需大量修改函数,效率低,是手工作坊式的编程。3.1面向对象的方法观点:自然界是由实体(对象)所组成。程序设计方法:使用面向对象的观点来描述、模仿并处理现实问题。要求:高度概括、分类和抽象。目的:实现软件设计的产业化。程序=多个对象+消息面向对象的观点:认为自然界是由一组彼此相关并能相互通信的实体(对象)所组成。面向对象的程序设计方法:使用面向对象的观点来描述现实问题,然后用计算机语言来模仿并处理该问题。要求:描述或处理问题时应高度概括、分类、和抽象。目的:实现软件设计的产业化。抽象抽象是对具体对象(问题)进行概括,抽出这一类对象的公共性
4、质并加以描述的过程。先注意问题的本质及描述,其次是实现过程或细节。数据抽象:描述某类对象的属性或状态代码抽象:描述某类对象的共有的行为特征或具有的功能。抽象的实现:通过类的声明。OOP的基本特点抽象实例——钟表数据抽象:intHour,intMinute,intSecond代码抽象:SetTime(),ShowTime()classClock{public:voidSetTime(intNewH,intNewM,intNewS);voidShowTime();//成员函数private:intHour,Minute,Second;//数
5、据成员};封装将抽象出的数据成员、代码成员(函数)相结合,将它们视为一个整体。目的是增强安全性和简化编程,使用者不必了解具体的实现细节,而只需要通过外部接口,以特定的访问权限,来使用类的成员。实现封装:类声明中的成员访问说明符OOP的基本特点封装的对象外部接口:此对象利用它与其它对象发生联系。特定的访问权限:在对象外部不能访问或修改受保护的内部实现细节。封装实例:classClock{public:voidSetTime(intNewH,intNewM,intNewS);voidShowTime();private:intHour,Mi
6、nute,Second;};边界特定的访问权限OOP的基本特点继承与派生是C++中支持层次分类的一种机制,允许程序员在保持原有类特性的基础上,对新类进行更具体的说明。实现:声明派生类——加冒号See3.5OOP的基本特点关于继承与派生,以后会详细介绍。多态性多态:同一(函数)名称,不同的功能实现方式。目的:标识统一,减少程序中标识符的个数;接口统一,增加程序的灵活性实现:重载函数和虚函数——See3.6OOP的基本特点以后会详细介绍。3.2类与对象的定义类是具有相同属性和行为的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述,
7、其内部包括属性和行为两个主要部分。利用类可以实现数据的封装、隐藏、继承与派生。利用类易于编写大型复杂程序,其模块化程度比C中采用函数更高。类是C++的灵魂,如果不真正掌握类,就不能真正掌握C++类和对象函数是将逻辑上相关的语句与数据封装,用于完成特定的功能。而类则是逻辑上相关的函数与数据的封装,它是对所要处理的问题的描述。3.2.1类的声明形式P72类是一种用户自定义类型,声明形式:class类名{友元public:公有成员(成员函数,数据成员)private:私有成员protected:保护成员};类和对象类与外部的接口只允许本类中的
8、函数访问(可省略)只能由本类及其派生类的成员函数访问是必需的访问控制符类定义的几点说明:P721.类名通常以大写C开头2.Public,private,protected的作用在VC++中,一般将类的声明放
此文档下载收益归作者所有