美文网首页
java 父类没有无参构造方法,子类如何处理

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

作者: 综合楼 | 来源:发表于2023-11-19 17:38 被阅读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

相关文章

  • Java面向对象

    1、子类实例化时会默认调用父类无参构造函数,如果父类没有无参构造函数,则需要子类构造函数显示调用父类有参构造函数 ...

  • super

    注意:如果子类构造方法中没有显式调用父类构造方法,而父类又没有无参的构造方法,则编译出错。

  • 继承与组合复用

    继承 继承体系初始化顺序 创建子类对象时,默认先调用父类的无参构造方法,当父类中存在多个构造方法,但没有无参构造方...

  • java中构造方法的注意点

    默认的子类的构造方法中会自动调用父类的无参构造方法,如果手动调用有参的父类的构造方法的话,子类就不会在自动调用父类...

  • NO.13 父类没有空参构造的继承

    当子类继承父类时,如果父类中只写有参的构造方法而没写空参的构造方法,子类就继承不了 解决方法1:在父类中添加一个空...

  • 子类父类初始化流程

    父类子类在初始化的是执行的流程①子类构造器会隐式调用父类的无参构造方法,如果子类显式利用super调用了父类的有参...

  • 第十五天学习Java(面向对象的多态性)

    2.1子类对象的创建过程 实例化子类对象的过程 调用子类的构造方法中,先调用了父类的构造方法,默认调用的父类的无参...

  • Java中父子类的那些事

    Java中父子类的那些事 构造方法 1、子类构造方法执行时,都会先执行父类的构造方法,若没有显式地调用父类的构造方...

  • C++ 从入门到放弃 (Day-07)

    父类的构造函数 ◼ 子类的构造函数默认会调用父类的无参构造函数◼ 如果子类的构造函数显式地调用了父类的有参构造函数...

  • 5,super

    实例化一个类,会自动调用这个类的父类的构造方法 super调用父类的构造方法通常是有参的构造方法,参数和子类的构造...

网友评论

      本文标题:java 父类没有无参构造方法,子类如何处理

      本文链接:https://www.haomeiwen.com/subject/dzjmwdtx.html