面向对象程序设计吴迪毛琛.ppt
《面向对象程序设计吴迪毛琛.ppt》由会员分享,可在线阅读,更多相关《面向对象程序设计吴迪毛琛.ppt(23页珍藏版)》请在三一办公上搜索。
1、面向对象程序设计吴迪 毛琛,1.类与对象,对象(Object)是类(Class)的一个实例(Instance),重点是类的设计,而不是对象的设计。类提供关键字public、protected 和private,这样可以达到信息隐藏的目的,即让类仅仅公开必须要让外界知道的内容,而隐藏其它一切内容。但不要滥用封装。两种人:“以数据为中心”、“以行为为中心”,2.继承,继承:public继承:所有域都继承 private继承:public域的内容成private域 protected继承:public域的内容成protected域的逻辑关系:B继承A那么逻辑上一定是B从属于A,不能为了让B拥有A的一
2、些功能,就滥用继承。,公鸡为什么追打一只下了蛋的母鸡?!,因为母鸡下了一个鸭蛋,3.虚函数和多态,除了继承外,C+的另一个优良特性是支持多态,即允许将派生类的对象当作基类的对象使用。加上虚函数和抽象基类后,“多态”的好处就体现出来了。抽象基类只管定义纯虚函数的形式,具体的功能由派生类实现。,例如:XXXX的几何形体系列问题,“抽象基类”和“多态”有如下突出优点:,应用程序不必为每一个派生类编写功能调用,只需要对抽象基类进行处理即可。可以大大提高程序的可复用性。派生类的功能可以被基类指针引用,这叫向后兼容。,良好的编程风格,1.命名约定有不少人编程时用拼音给函数或变量命名,这样做并不能说明你很爱
3、国,却会让用此程序的人迷糊,程序中的英文一般不会太复杂,用词要力求准确。,Microsoft提倡的匈牙利命名法,new、delete 与指针,在C 语言中,函数malloc 用于申请内存,函数free 用于释放内 存。由于C+兼容C 语言,所以new、delete、malloc、free 都有可能一起使用。malloc-free new-delete在用delete 或用free 释放p 所指的内存后,应该马上显式地将p 置为NULL,以防下次使用p 时发生错误。预防“野指针”(1)指针没有初始化。(2)指向已经释放了的内存地址。eg.,Const的使用,1.强制保护函数的参数值不发生变化 v
4、oid f(String s);/pass by value void g(String/name 的值可能改变,void g(const String/name 的值不会改变,2.强制保护类的成员函数不改变任何数据成员的值 class Stackpublic:void push(int elem);void pop(void);int Count(void)const;/const 类型的函数private:int num;int data100;int Stack:Count(void)const+num;/编译错误,num 值发生变化pop();/编译错误,pop 将改变成员变量的值re
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 程序设计 吴迪毛琛

链接地址:https://www.31ppt.com/p-5461775.html