【发布时间】:2018-12-21 10:35:11
【问题描述】:
我有点困惑为什么我们不能在子类构造函数中显式调用父构造函数。如果我们谈论方法,它可以很容易地在子构造函数中调用。
class F {
F() {
System.out.println("F");
}
}
class G extends F {
G() {
F();
}
public static void main(String args[]){
new G();
}
}
输出
G.java:8: error: cannot find symbol F(); symbol: method F() location: class G 1 error
【问题讨论】:
-
您可以使用
super();调用父级的构造函数 -
我想显式调用..
-
@AshwiniPandey 你所能做的就是调用 super() (在这种情况下是隐含的)。
-
不,我想显式调用
-
因为构造函数不能直接调用,和普通函数一样,需要
new操作符。
标签: java