0

我不记得这个概念的名字了。

  public interface MainInterface {
      public void method1();
      public void method2();
 }

  void testMethod() {
        methodMain(new MainInterface() {

            @Override
            public void method1() {
                System.out.println("This is method1");
            }

            @Override
            public void method2() {
                System.out.println("This is method2");
            }
        });
    }

   void methodMain(MainInterface mi) {
        mi.method1();
        mi.method2();
   }
  • 我创建 MainInterface 的实例而不给出对象的名称
  • 我实现了接口方法
  • 然后将未知名称的实例传递给methodMain。

这个概念是什么以及它是如何工作的?

4

3 回答 3

3

您已经创建了一个匿名内部类的实例(即没有名称的类)。

于 2012-09-27T06:58:58.757 回答
0

这个概念被称为回调。在java中,你只有回调接口,在其他语言中,你可以有回调函数。

作为一种设计模式,这个概念涉及到策略模式(正如阿米特已经提到的)。

于 2012-09-27T06:59:36.273 回答
0

匿名课程就是您搜索的内容。

于 2012-09-27T07:00:49.500 回答