继承时的构造函数的的原则
在日常开发中,我们一般都会存在class的继承,那对于继承,子类父类的构造顺序是什么样的那?自己总结了下,虽然很基础,还是记录下,作为以后的复习只用。
继承时的构造原则:
1、如果子类没有定义构造函数,那子类就是调用父类的无参数的构造函数。
2、如果子类定义了构造函数,那么不管父类有没有定义构造函数,在创建子类对象时,首先会调用父类的无参数的构造函数,然后在调用子类自己的构造函数。
3、在创建一个子类对象时,如果子类没有显示调用父类的构造函数,那么就会首先调用父类的默认的无参的构造函数(其实和上面的2是一样的)。
4、在创建子类对象时,如果此时父类有自己书写了无参的构造函数,此时如果子类没有显示的调用父类的构造函数,那就就会首先调用父类自己书写的的无参的构造函数。
5、在创建子类对象时,如果父类只有有参的构造函数,子类没有显示的调用的父类的构造函数,则会出错。因为如果父类只有有参的构造函数,那么子类就必须显示调用父类有参的构造函数,
6、如果子类显示调用父类的有参构造函数,那么必须使用初始化列表形式进行初始化。
Do one thing at a time,and do well.