java 父类没有无参构造方法,子类如何处理

2023-11-19  本文已影响0人  综合楼

父类没有无参构造方法

public class Father {
    private String name;

    public Father(String name) {
        this.name = name;
    }
}
-----------------------------------
public class Son extends Father {
    private String sex;
    public Son() {
        super("aa");
        System.out.println("aa");
    }
}

如果子类中没有显式地调用父类的构造方法,编译器会自动在子类的构造方法中插入一个隐式的 super() 调用
但是如果父类中没有无参构造方法,这个隐式的调用会导致编译错误。

结论:子类必须在构造方法中的第一行显示调用父类构造方法。

不写或不在第一行写都会编译报错。

错误示例:

image.png
上一篇下一篇

猜你喜欢

热点阅读