java - 从匿名类获取对包含实例的引用

标签 java anonymous-class

我有以下代码:

class Foo 
{
    public Foo()
    {
        new ActionListener()
        {
            public void actionPerformed( ActionEvent e )
            {
                // how can I use a reference to Foo here
            }
        }
    }
}

我可以从 actionPerformed 内部使用当前 Foo 实例的成员变量。我使用 this 获取 ActionListener 的实例。但是我怎样才能获得对当前 Foo 实例本身的引用呢?

最佳答案

您可以使用Foo.this访问Foo实例:

class Foo
{
  public Foo()
  {
    new ActionListener()
    {
      @Override
      public void actionPerformed(final ActionEvent e)
      {
        Foo thisFoo = Foo.this;
      }
    };
  }
}

关于java - 从匿名类获取对包含实例的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33996231/

相关文章:

c# - 具有匿名类型和用户定义类型的 LINQ 选择查询

c# - VS intellisense 如何知道匿名类在编译时的属性?

java - 无法从本地文件系统播放音乐,但可以从SD卡播放

java - 泛型方法 - 传递对象并调用其方法

java - Gson 解析器因空白字符而崩溃

c# - 以匿名类作为数据源的 BindingSource 列

ruby - rspec 中定义的匿名类不会响应新的

java - Integer.parseInt 大数并保留符号?

java - Spring Data JPA + Hibernate + Log4j2 创建entityManagerFactory Bean时出现ClassLoadingException

Java 反射 : How can I retrieve anonymous inner classes?