如果父类没有无参构造方法,那么子类的构造方法会出现什么现象呢?
答:报错
解决办法:
A: 在父类中加一个无参构造方法
B: 通过使用super关键字去显示的调用父类的带参构造方法
C: 子类通过this去调用本类的其他构造方法
子类中一定要有一个构造方法去访问了父类的构造方法,使得父类的数据可以初始化(否则继承有什么意义
)。总之一定要有个构造方法,不管是从哪里来的。
子类实例化时总是(默认,不用写super())先调用父类的无参构造方法。如果父类没有无参的构造方法,那就一定要显式(写super(xxx))调用父类有参的构造方法,或者写this()调用自己本类的构造方法。
子类继承父类时,会继承父类的所有成员属性和方法,但是私有的属性和方法,一般情况子类无法访问,可以使用public类型的getter或setter访问私有属性,私有方法无法访问
。
子类实例化时,必须执行父类一系列的初始化工作,如果有多个间接父类,从最初的
那个父类执行,这样子类才能够拥有父类的成员变量和方法。最后形成了继承树。