【发布时间】:2012-06-15 01:48:35
【问题描述】:
public class Test {
public static void main(String[] args) {
DemoAbstractClass abstractClass = new DemoAbstractClass() {
private String val;
@Override
public void runner() {
val = "test";
System.out.println(val);
this.run();
}
public String getVal() {
return val;
}
};
abstractClass.runner();
/**
* I want to access getVal method here
*/
}
}
abstract class DemoAbstractClass {
public void run() {
System.out.println("running");
}
public abstract void runner();
}
在这里,我声明一个抽象类DemoAbstractClass。我显然可以创建一个扩展此类的新类并将此方法添加到其中。但是,我不希望在我的场景中这样做。 有没有其他方法可以访问上述代码中的 getVal 方法??
【问题讨论】:
-
除了下面的答案,另见stackoverflow.com/questions/319765/…
标签: java inheritance abstract-class