派生类继承方式
class 派生类 : 继承方式 基类名{}
继承只能继承基类的public 和protected
三种继承方式
public:公有继承:继承过来的属性和方法对应基类的类型
protected:继承过来的属性和方法都变为protected类型
private:继承过来的属性和方法都变为private类型
父类以及子类的构造方法
构造原则如下:
- 如果子类没有定义构造方法,则调用父类的无参数的构造方法。
- 如果子类定义了构造方法,不论是无参数还是带参数,在创建子类的对象的时候,首先执行父类无参数的构造方法,然后执行自己的构造方法。
- 在创建子类对象时候,如果子类的构造函数没有显示调用父类的构造函数,则会调用父类的默认无参构造函数。
- 在创建子类对象时候,如果子类的构造函数没有显示调用父类的构造函数且父类自己提供了无参构造函数,则会调用父类自己的无参构造函数。
- 在创建子类对象时候,如果子类的构造函数没有显示调用父类的构造函数且父类只定义了自己的有参构造函数,则会出错(如果父类只有有参数的构造方法,则子类必须显示调用此带参构造方法)。
- 如果子类调用父类带参数的构造方法,需要用初始化父类成员对象的方式
继承中的同名处理
类对象会默认调用子类的的属性或者函数,如果想要调用父类的属性或函数,需要作用域
使用方法 类名称.父类名称::方法或者属性
继承中静态成员的处理:
处理类似非静态成员函数处理,如果想访问父类中的成员,加作用域即可;
虚继承:
两个派生类继承了同一个基类而又有某个类同时继承着两个派生类,这种继承称为菱形继承;这就是需要虚继承virtual;虚继承的主要概念在多态再讲
=================
如果各位小伙伴觉得我写的不够详细或错误,以及有什么不懂的,想补充的,请在下方留言或者发送您宝贵的建议到我邮箱283682639@qq.com