java-向字段添加匿名类

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

我试图理解匿名类在Java中的用法。基本上,我已经创建了一个匿名类,即方法中的testAnonymous,那么如何将匿名类作为字段添加到其父类MyClass中呢

我的代码中肯定有问题。我也在下面发表了评论。希望这有助于解释这个问题。我无法理解这件事。谢谢你的帮助

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不是匿名类的名字吗?