有问题的类是这样的。正如您所看到的,这非常简单。只是为了了解匿名内部类的工作原理。在这种情况下,我收到 4 个错误,指出无法找到符号 WaterLevel 和 ChlorineLevel。你能看出这有什么问题吗?
public class Pool {
public WaterLevel level() {
return new WaterLevel() {
private String level = "empty";
public String litresToFull() { return "3000"; }
};
}
public ChlorineLevel chlorine(final int amt){
return new ChlorineLevel() {
private int level = amt;
int addChlorine() { level += amt; return level; }
};
}
}
最佳答案
罗希特·贾恩说
True, but those anonymous inner classes are actually subclass of WaterLevel and ChlorineLevel respectively. You've to have those classes.
这让我意识到我必须为我正在使用的每个匿名内部类定义一个接口(interface)。只是想发布此内容,以便明显地解决此问题。
关于java - Java 中的匿名内部类不起作用。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22293573/