父类对子类构造方法的影响
在继承中,父类对子类构造方法有什么影响
- 如果父类拥有无参构造方法(无论是显式还是隐式),且子类中的构造方法没有明确指定调用父类的中的哪个构造方法,且没有调用本类中的其它构造方法(调用本类中的构造方法会用到this关键字,this和super都需要放在第一排),那么该构造方法将会使用super();隐式调用父类的无参构造方法。
super关键字是用来调用父类相关内容的,这里我调用一个父类有参数构造方法
调用本类中构造方法:这里可以看到控制台输出了一个“父类无参构造方法”,是由于this调用的本类中的构造方法隐式调用了父类中的无参构造方法,属于间接调用。 - 注意!如果父类没有无参构造方法(无论隐式的还是显式的),则要求子类构造方法必须直接或间接指定调用父类某个构造方法并且放在有效代码第一行。总而言之,子类必须调用父类的构造方法。如图: