java-向字段添加匿名类
我试图理解匿名类在Java中的用法。基本上,我已经创建了一个匿名类,即方法中的testAnonymous,那么如何将匿名类作为字段添加到其父类MyClass中呢 我的代码中肯定有问题。我也在下面发表了评论。希望这有助于解释这个问题。我无法理解这件事。谢谢你的帮助java-向字段添加匿名类,java,class,field,inner-classes,anonymous-class,Java,Class,Field,Inner Classes,Anonymous Class,我试图理解匿名类在Java中的用法。基本上,我已经创建了一个匿名类,即方法中的testAnonymous,那么如何将匿名类作为字段添加到其父类MyClass中呢 我的代码中肯定有问题。我也在下面发表了评论。希望这有助于解释这个问题。我无法理解这件事。谢谢你的帮助 public class MyClass { private int number; private String name; private Greeting greeting; //the anonym
public class MyClass {
private int number;
private String name;
private Greeting greeting; //the anonymous class FrenchGreeting extends Greeting
// so is this the way to add the instance of anonymous class?
...
public void sayHi(){
Greeting frenchGreeting= new Greeting(){ //created an anonymous class
//override some method in Greeting, to make it a french greeting
}
frenchGreeting.greet();//why can't I use the method in Greeting class here?
}
私人问候代码>-您缺少一个变量名。尝试私人问候语代码>我认为这个链接可以帮助。。。[ [1]:最好演示如何重写该方法。如果基类Greeting
中存在方法Greeting
,则可以在匿名类中重写该方法。但是新方法不能以这种方式调用,除非从匿名类内部调用。@Eran谢谢。我已经编辑了该方法,但它仍然不起作用。@Aman我实际上已经看过了在发帖之前先发帖……但是我不明白其中的一些要点,比如在回复中,他们说匿名类不应该有名字。我同意。但是他们也使用了Callable c=new Callable
c不是匿名类的名字吗?