继承和派生.ppt
《继承和派生.ppt》由会员分享,可在线阅读,更多相关《继承和派生.ppt(28页珍藏版)》请在三一文库上搜索。
1、继承和派生,继承和派生的基本概念 单一继承定义 派生类重定义基类函数 基类中成员被继承后存取权限等级的变化 继承关系中构造函数、析构函数之间的关系 多重继承,继承的例子,家具和柜子 建筑和房子 道路和高速公路 动物和猫 电视和彩色电视 电脑和笔记本电脑,基类与派生类,在原有类的基础上派生出新的类,新类继承原有类的属性和方法,称原有的类为基类,新类称为派生类。 假定有一个类A,要创建一个新类B,它是类A的一个特殊版本。类A就称为基类,类B则称为派生类。类A是父,类B就是子,继承和派生的基本概念,继承允许以现有的类为基础来构建新类 新类(派生类)继承现有类(基类)的属性和行为 派生类可以修改继承的
2、属性和行为 派生类可以增加新的属性和行为 派生类对象也是基类对象 派生类对象和基类对象可以被统一管理,继承和派生的基本概念,继承的意义,便于管理系统中的对象 系统扩充比较容易- 利用程序代码的再用性 加快程序发展的速度 减少程序的错误,何时使用继承,继承使用时机 A类是B类的一种 A类与B类在属性和功能上相差不多, 只是A类多了一些独有的特性 此时可以考虑使A类继承于B类,派生类的声明,单继承派生类的声明语法为: class 派生类名 : 继承方式 基类名 派生类新增成员的声明; 继承要考虑的部分 派生类不同于基类的部分 派生类扩充基类的部分,继承和派生,class Point private
3、: int x,y; public:Point(int a ,int b)x=a;y=b; void show()coutxyendl; ; class Rectangle:private Point private:int H,W; public:Rectangle(int a,int b,int h,int w):Point(a,b) H=h;W=w; void show()point:show();coutHWendl; ;,继承和派生,私有成员(private):可以被类自身的成员和友元访问,但不能被包括派生类在内的其他任何类和任何普通函数访问 公有成员(public):可以被任何普通
4、函数和任何类的成员函数访问 保护成员(protected):可以被类自身的成员和友元访问外,还可以被派生类的成员函数访问,但不能被任何非友元的普通函数访问,公有继承(public)和派生,基类中公有成员和受保护成员被继承后可见性不变 public方式继承成员存取权限等级的变化,私有继承(private)和派生,基类中公有成员和受保护成员被继承后都是私有的 private方式继承成员存取权限等级的变化,受保护继承(protected)和派生,基类中公有成员和受保护成员被继承后都是受保护的,基类中的私有成员,基类中的私有成员 能被派生类继承 不能被派生类的成员函数直接访问 可通过定义于基类的公有和
5、受保护成员函数访问,派生类重定义基类函数,在派生类中重定义基类的函数 派生类自动继承基类的所有成员 重定义函数的函数原型和基类中被重定义函数的函数原型必须完全相同 不同则是函数重载 重定义之后两个函数共存,但调用方法不同 调用基类函数:基类名 + : + 函数名 调用派生类函数:直接调用 如果派生类中出现相同的成员需要编程时注意其存取的范围. 不能运用基类的成员函数来设定派生类的数据成员, 而只能在派生类中重新定义存取数据成员的成员函数.,继承和派生,练习、设计一个圆类,从圆派生圆柱(或圆锥),并设计成员函数输出圆柱(或圆锥)的底面面积和体积。,继承关系中构造函数之间的关系,派生类不继承基类的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 继承 派生
链接地址:https://www.31doc.com/p-2631890.html