class A {
A(int x) { System.out.println("constructor A"); } }
class B extends A {
B() { System.out.println(" constructor B"); } }
public class C {
public static void main(String args[]) { B b = new B(); } }
Run Code Online (Sandbox Code Playgroud)
它说A类的构造函数不能应用于给定的类型.
gex*_*ide 10
您必须在构造函数中A(int x)显式调用构造函数B().即,你必须写
class B extends A {
B() {
super(<<< insert some int here>>>);
System.out.println(" constructor B");
}
}
Run Code Online (Sandbox Code Playgroud)
如果你没有添加这样的超级调用,那么java将为super();你插入试图调用的内容A().由于没有构造函数,A()您会收到错误,指出您的构造函数不能应用于参数类型.