我正在学习java。我正在读的书有一个问题,询问以下代码有什么问题?我已经在 NetBeans 中输入了代码,并且可以看到错误,但是为什么会导致此错误以及如何解决它?
该错误在代码 public A(int t)
上突出显示,并显示
Constructor B in class B cannot be applied to given types, require int, found no arguments, reason actual and formal arguments lists differ in length.
这是代码:
public class Test {
public static void main(String[] args) {
B b = new B(5);
}
}
class A extends B {
public A(int t) {
System.out.println("A's constructor is invoked");
}
}
class B {
public B(int k) {
System.out.println("B's constructor is invoked");
}
}
最佳答案
当您的父类(super class)
具有args构造函数
并且没有无参数构造函数时,您必须使用super(args)显式调用它
从子类构造函数调用
class A extends B {
public A(int t) {
super(t);
System.out.println("A's constructor is invoked");
}
}
关于java - 这段java代码有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14249091/