interface Example{
   void methodExample();
 }
 class Y{
  void do(Example x) { }
}

class X{
   void methodX() {
     Y y = new Y();
     y.do(new Example() {
       public void methodExample() {
         System.out.println("methodExample");
       }
     });
   }
 }


我想创建一个主类并调用methodExample。我该怎么做?

最佳答案

由于您的类实现了Example接口,并且由于该接口上存在void methodExample(),因此您所需要做的就是通过其接口引用该对象,并调用其方法:

class Y{
    public void doIt(Example x) {
        x.methodExample();
    }
}


上面的方法起作用,因为在编译时就知道实现Example的所有实现methodExample()的类的对象,包括所有匿名实现。

10-06 06:33