java 子类只要定义构造函数父类就一定要有构造函数吗

Python014

java 子类只要定义构造函数父类就一定要有构造函数吗,第1张

Q1.java中只要调用子类的无参构造函数就要调用父类无参数的构造函数!

Q2.也不一定。

e.g 如果你子类只调用无参构造方法(没有调用多个参数的构造方法),那么父类的无参构造方法则可有可无,因为系统会帮你生成。

你应该知道,如果子只类定义了一个带有参数的构造方法,那么系统就不会帮你生成无参构造方法。父类也是如此。

不是必须的,在构造函数中,如果第一行没有写super(),编译器会自动插入.但是如果父类没有不带参数的构造函数,或这个函数被私有化了(用private修饰).此时你必须加入对父类的实例化构造.而this就没有这个要求,因为它本身就进行实例化的构造.