java - 从内部匿名类调用外部类的函数(与外部相同的类)

标签 java inner-classes anonymous-class

<分区>

如何在不使用辅助变量的情况下调用外部类的回调函数,就像我在下面的示例中所做的那样。

请注意 Calling outer class function from inner class 中描述的解决方案可能行不通。

public abstract class Job {
    public void callback();
}

public abstract class ExtendedJob extends Job {

    protected void handleResult() {
        // workaround for accessing the outter class
        final ExtendedJob outter = this;

        new ExtendedJob {
            public void callback() {
                // can i do the same without the outter variable?
                outter.callback();
            }
        }
    }
}

最佳答案

我认为这应该可以解决问题

ExtendedJob.this.callback();

关于java - 从内部匿名类调用外部类的函数(与外部相同的类),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23916902/

相关文章:

ruby - 将测试/单元与匿名测试用例一起使用

java - 匿名类的多重继承

java - 使用文本字段和按钮初始化变量

java - Firefox在Struts应用程序中剪切名称中包含空格的文件

java - final 局部变量无法赋值,因为它是在封闭类型中定义的

java - 嵌套嵌套比较器类

java - JDOM 中的元素列表

java - 如何使用带参数的自定义注释查找 CDI bean?

java - 如何将类中创建的所有对象存储在 Java 中该类返回的单个数组中?

java - 匿名内部对象中的 "This"