Mic*_*rdo 1 java constructor class abstract
以下在Java中对我不起作用.Eclipse抱怨说没有这样的构造函数.我已经将构造函数添加到子类中以解决它,但还有另一种方法可以做我正在尝试做的事情吗?
public abstract class Foo {
String mText;
public Foo(String text) {
mText = text;
}
}
public class Bar extends Foo {
}
Foo foo = new Foo("foo");
Run Code Online (Sandbox Code Playgroud)
Bri*_*new 10
你无法实例化,Foo因为它是抽象的.
相反,Bar需要一个调用super(String)构造函数的构造函数.
例如
public Bar(String text) {
super(text);
}
Run Code Online (Sandbox Code Playgroud)
在这里,我将text字符串传递给超级构造函数.但你可以做(例如):
public Bar() {
super(DEFAULT_TEXT);
}
Run Code Online (Sandbox Code Playgroud)
该super()结构需要在子类构造函数的第一个语句.