我在定义时尝试在其中使用匿名类的实例,但是IDE给出了多个错误。我评论了下面的问题。这是一种使用匿名类的完全错误的方法,还是因为我写了不正确的东西?提前致谢!
zoo = new ArrayList <AbstractCat>();
AbstractCat cat = new AbstractCat (){//trying to create an anonymous class and add the instance cat to the ArrayList
zoo.add(this); //this line has multiple errors, I tried add(cat) but didn't work
.....
// override the methods in AbstractCat
答案 0 :(得分:1)
如果我以不同的方式阅读您的问题,您似乎正在尝试使用您创建的AbstractCat
个实例,并将其添加到您的zoo
列表中。
嗯......你不能以你在匿名课程中尝试的方式来做。您可能能够,但我强烈阻止它。
相反,您可以更简单地将您保存的匿名类的实例放入列表中。
AbstractCat cat = new AbstractCat() {
// impl
}
zoo.add(cat);
答案 1 :(得分:0)
你不会这样做,你需要在定义匿名类后执行zoo.add(cat)
。