Closed. This question needs details or clarity。它当前不接受答案。












想改善这个问题吗?添加详细信息并通过editing this post阐明问题。

5年前关闭。





interface Foo1
{
  int bar();
}

class Sprite
{
  public int fubar( Foo1 foo )
  {
    return foo.bar();
  }

  public void testFoo()
  {
    fubar(
      new Foo1()
      {
        public int bar()
        {
          return 1;
        }
      }
    );
  }
}


无法理解fubar()方法。可以给我解释一下这个程序吗

最佳答案

方法testFoo创建一个实现Foo1接口的匿名内部类的实例,并将其(实际上是将指针的值)传递给fubar方法。

fubar方法在bar实例上调用Foo1方法,并返回结果。

fubar方法的结果在testFoo方法中被忽略。

最终结果是该代码实际上并没有执行当前显示的任何操作。

07-24 19:26