Java无参构造方法的使用详解
作者:JD强子
无参构造方法用于子类创建对象时调用父类构造方法,如果子类未指定super()而父类又未写无参构造函数将报错,为了避免错误,建议在类中写一个不带参数的构造函数
Java无参构造方法

无参构造函数
主要用于在子类创建对象时使用,java程序在执行子类的构造方法之前,会去调用父类构造方法,可以显示的指定super()某一个父类构造函数,如未显示指定 super(),
public class Chinese extends Person {
Chinese() {
super(); // 调用父类构造方法(1)
prt("子类·调用父类”无参数构造方法“: "+"A chinese coder.");
}
系统会自动调用父类中没有参数的构造方法。
如果我子类未指定super()
而父类又未写无参构造函数将报错

因为子类继承父类的时候会自动继承默认的构造函数(这里指无参的构造函数)。
而子类里面已经有一个带有参数的构造函数了,如果没有写那个默认的不带参数的构造函数的话,继承的时候就会报错,因为系统不知道要继承哪个构造函数,必须明确的使用super()关键字来描述。
public class Parent {
public Parent(int id) {
}
}
class Child extends Parent{
public Child(int id) {
super(id);
}
}
所以一般为了避免这种错误的发生,在有带多个构造函数的类里面都会写一个不带参数的构造函数。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
