Java中的匿名内部类无法正常工作。为什么?

时间:2014-03-10 06:38:10

标签: java anonymous-inner-class jcreator

有问题的课程就是这个。如您所见,它非常简单。只是为了了解匿名内部类的工作原理。在这种情况下,我得到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; }
        };
    }
}

1 个答案:

答案 0 :(得分:1)

Rohit Jain说。

  

是的,但这些匿名内部类实际上分别是WaterLevel和ChlorineLevel的子类。你必须要有这些课程。

这让我意识到我必须为我正在使用的每个匿名内部类定义一个接口。只是想发布这个,这显然已经解决了。