C++的继承小结
继承和多态是面向对象编程的一大特点。
·继承是在一个已存在的类的基础上建立一个新的类。已存在的类叫做基类或父类,新类叫做子类或派生类。一个基类可以派生为多个子类,子类又可以作为基类派生新类,因此子类和父类是相对而言的。
·派生类的构成:
(1)从基类接收的所有成员(成员函数和成员变量),不包括基类的构造函数和析构函数。
(2)调整从基类接收的成员。(进行方法的覆盖等)
(3)在声明派生类时新增成员。
·派生类成员的访问属性:
(1)基类的成员函数访问基类的成员和派生类的成员函数访问派生类的成员。要求:私有数据成员(private)只能被同一类中的成员函数访问,公用数据成员(public)可以被外界访问。
(2)基类的成员函数不能访问派生类的成员。
(3)外界(派生类和派生类外)访问基类成员涉及到派生类的继承方式。
a.公有继承public:基类的公有成员和受保护成员在派生类中保持原有访问属性,基类的私有成员不能被外界访问;
b.私有继承private:基类的公有成员和受保护成员在派生类中成了私有成员,基类的私有成员还是基类私有;
c.受保护的继承protected:基类的公有成员和受保护成员在派生类中成了受保护成员,基类的私有成员还是基类私有;
(受保护的成员的意思是可以被派生类引用但是不能被派生类外引用。)