继承本质:减少重复代码 1.语法:class 子类 : 继承方式 父类 子类也称为派生类, 父类也称为基类 公共类:
class gonngyong
{
public:
//公共的成员属性和成员函数
}
继承:
class Solution : public gongyong
{
public:
//自身的成员属性和成员函数
}
2.继承方式 公共继承:父类中的公共权限和保护权限继承到子类中保持不变,父类私有权限不可访问 保护继承:父类中的公共权限和保护权限继承到子类中都变为保护权限,子类类外变得不可访问,父类私有权限不可访问 私有继承:父类中的公共权限和保护权限继承到子类中都变为私有权限,父类私有权限不可访问 3.继承中的对象模型 在父类中所有的非静态成员属性都会被子类继承下去,包括私有属性成员,只是访问不到 4.继承中构造和析构顺序 继承中,先有父类构造函数,再有子类构造函数,析构函数正好相反;相当于栈上的数据 5.继承同名成员处理方式 当子类中出现与父类同名的成员时,访问子类的同名成员可以直接访问,通过子类对象访问父类同名成员需要加作用域; 在调用同名成员函数时,不能通过函数重载来区分子类和父类中的同名函数,只会调用子类中的函数,若想调用父类中的成员函数,必须在函数前加父类的作用域;a.Solution::func(); 6.继承同名静态成员处理方式 ①.通过对象访问
Solution C;
C.a;
C.FULEI::a; 访问父类中的a变量
②.通过类名访问
Solution::a;
Solution::FULEI::a;第一个::代表通过类名访问,第二个代表父类的作用域
7.多继承语法 class 子类 :继承方式 父类 1, 继承方式 父类2 访问不同父类的同名成员时,需要加上父类1 2的作用域,加以区分
|