ImageVerifierCode 换一换
格式:PPT , 页数:29 ,大小:559.51KB ,
资源ID:4224543      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-4224543.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(理解C++中的类和对象.ppt)为本站会员(weiwoduzun)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

理解C++中的类和对象.ppt

1、类和对象,C+程序设计课程,主讲:史永哲,学习内容,一、类和对象的概念 二、类和对象的定义 三、类和对象的使用 四、总结,1、面向对象 面向对象(OO:Oriented Object)是软件行业的新术语,它是为了解决70年代的“软件危机”而出现的新的软件开发方法。 面向对象是指一种程序设计范型,同时也是一种程序开发的方法。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性。,一、类和对象的概念,面向过程:强调处理问题的过程。,面向对象:利用对象间的消息传递来驱动程序的执行。,优点:真实表现客观世界,对象间的关系清晰,对象间的消息处理高效。,不足之处:复用性较差

2、,无法真实描绘客观世界。,一、类和对象的概念,一、类和对象的概念,2、类和对象的定义:对象是对问题域中客观存在的事物的抽象,它是一组属性和这些属性上的操作的封装体。类是具有相同属性和操作的一组对象的统一抽象的描述 。类是对象的模板,对象是类的实体。,一、类和对象的概念,对象=数据+数据上的操作程序 = (对象+对象+对象+) + 消息消息:面向对象中,我们称一个对象对另一个对象施加的操作为消息(message)。如:对汽车对象,点火、换档、踩油门、踩刹车等,这些施加操作的过程,称为发送消息。,对象具有抽象性、封装性、继承性、多态性四个特点。,一、类和对象的概念,(1)对象的抽象性抽象是从众多的

3、事物中抽取出共同的、本质性的特征,而舍弃其非本质的特征。程序设计中对象的抽象有两方面,一是对数据的抽象,即是对象本身属性的抽象。二是过程的抽象,即是对象本身行为的抽象。,一、类和对象的概念,(2)对象的封装性封装有两个含义:一是把对象的全部属性和操作结合在一起,形成一个不可分割的整体对象,二是信息隐藏,即这个整体对外尽量隐藏它的细节,只公布一个有限界面,通过这个界面和其它对象交互。,一、类和对象的概念,(3)对象的继承性特殊类的对象获得一般类的全部属性与操作,称做特殊类对一般类的继承。被继承的类叫父类或基类,继承父类的类叫子类或派生类。,一、类和对象的概念,(4)对象的多态性对象的多态性指基类

4、中定义的属性或操作被派生类继承后,可以具有不同的数据类型或表现出不同的行为。,一、类和对象的概念,例:圆形(circle)的数据抽象:int x,y;double r;行为抽象:setx();sety();setr();draw();,一、类和对象的概念,二、类和对象的定义,1、类定义形式: class 类名 private:私有类成员;public:公有类成员;protected:保护类成员; ;,二、类和对象的定义,例2.1 定义一个类 class sample private int x; public:void fun() ; ;,二、类和对象的定义,例2.2 定义一个类(类外实现成员

5、函数) class sample private int x; public:void fun(); ; /*类外成员函数的实现*/ void sample:fun() ; ,二、类和对象的定义,类外函数实现的格式为: 函数类型 类名:函数名(参数表) 语句组 ; 其中,运算符“:”称为作用域分辨符,它指出“函数名”是属于“类名”的成员函数。,二、类和对象的定义,方法1: class A public:int r, t; ; A x, y;,方法2: class Bint I, j; public:void Setdata(int a, int b) I=a; j=b;void print(v

6、oid)coutItjn; b1, b2;,二、类和对象的定义,2、定义对象:,3、类中的构造函数: 构造函数是类的成员函数,在类内声明,可以在类体内或类体外实现。 构造函数名与类名相同。 构造函数无返回值。 构造函数在创建对象时,自动调用,不需要程序员写代码显式调用。,二、类和对象的定义,例:2.3#include class testpublic:test()cout “counstructor called n“;test obj1;void main() test obj1;输出结果为:counstructor called,二、类和对象的定义,构造函数的重载: 例:2.4#inclu

7、de class testpublic:test()cout “counstructor called n“;test(char * name)cout “counstructor called name=“name;test obj1;void main() test obj1;text obj2(“李平“); 输出结果为:counstructor called conustructor called name=李平,二、类和对象的定义,4、类中的析构函数 析构函数名为“”。如,Calendar类的析构函数名为Calendar。 没有参数和返回值。 析构函数不能重载。 当对象消亡时,系统回收

8、该对象所占用的内存空间前,析构函数会被自动调用。,二、类和对象的定义,例:class Boxpublic:Box() cout“distroy the object“ private:int width, length, depth; ; int main() Box b; delete b; 输出:distroy the object,二、类和对象的定义,5、类使用的几点说明: (1)在类的外部,只能访问类的公有成员,而不能访问类的私有成员或保护成员。若要访问类对象的私有成员,只能通过对象的公有成员函数来获取。 (2) 同类型的对象之间可以整体赋值,例如:rr=r,将对象r的所有成员依次赋给

9、对象rr的成员,这种赋值与对象的成员访问权限无关。 (3)对象用作函数的参数时,属于赋值调用;函数也可以返回一个对象。,二、类和对象的定义,应用:/类rectangle的定义 class rectangleprivate: float width,height;public: void setwidth(float x)width=x;void setheight(float y)height=y;,三、类和对象的使用,float area() return width*height; float perimeter() return 2*(width+height); ; static vo

10、id main() rectangle rect; rect.setwidth(45); /设置rectangle的宽度,三、类和对象的使用,rect.setheight(54.2);/设置rectangle的高度 cout“the area of rectangle is“rect.area() endl; /输出矩形面积 cout“the perimeter of rectangle is“ rect.perimeter()endl;/ 输出矩形周长 输出结果:the area of rectangle is 2926.8 the perimeter of rectangle is 198.4,三、类和对象的使用,1、介绍了面向对象的概念,给出了类和对象的定义,讲解了类四个特点 2、讲解了类和对象的定义方法,讲解了类成员的三种访问控制特点,给出了对象的两种创建方法,介绍了构造函数和析构函数及其应用 3、举实例说明面向对象的编程方法,四、小结,祝大家学习愉快! 谢谢大家!,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报