这段代码报错的原因是因为在 Dog 类中调用了父类 pet 的构造方法,但是在 pet 类中并没有定义无参构造方法。解决方法是在 pet 类中添加一个无参构造方法,或者在 Dog 类中使用 super 关键字显式调用带参的父类构造方法。

例如,可以在 pet 类中添加以下代码:

public class pet {
    // ...
    public pet() {
        // ...
    }
}

或者,在 Dog 类中使用 super 关键字显式调用带参的父类构造方法:

public class Dog extends pet {
    // ...
    public Dog() {
        super(参数1, 参数2, ...); // 使用 super 关键字调用带参父类构造方法
        // ...
    }
}

需要注意的是,如果父类没有定义任何构造方法,编译器会自动生成一个无参构造方法。但是,一旦父类定义了任何构造方法,编译器就不会再自动生成无参构造方法。因此,在子类调用父类构造方法时,需要确保父类中存在相应的构造方法。

Java 继承报错:子类调用父类无参构造方法

原文地址: https://www.cveoy.top/t/topic/nZQ5 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录