首页  >  文章  >  Java  >  如何从 Java 中的匿名内部类访问外部类方法?

如何从 Java 中的匿名内部类访问外部类方法?

Linda Hamilton
Linda Hamilton原创
2024-11-10 21:26:02169浏览

How can I access outer class methods from an anonymous inner class in Java?

从匿名内部类访问外部类方法

在 Java 中,可以在外部类中定义匿名内部类。这些内部类可以访问外部类的成员,包括方法和字段。

访问外部类方法

在匿名内部中访问外部类的方法类,使用 OuterClassName.this 语法。这允许您引用外部类的封闭实例。

示例

考虑以下代码片段:

public class OuterClass {
    public void otherMethod() {}  // Method in outer class

    public void doStuff(String str, InnerClass innerClass) {}

    public void method() {
        doStuff("asd", new InnerClass() {
            public void innerMethod() {
                OuterClass.this.otherMethod();  // Calls the outer class method
            }
        });
    }
}

在此例如,在 method() 方法中定义的匿名内部类 InnerClass 可以访问封闭 OuterClass 的 otherMethod() 方法。这是使用 OuterClass.this 语法完成的。

注意: OuterClassName.this 语法也可用于访问匿名内部类中外部类的字段。

以上是如何从 Java 中的匿名内部类访问外部类方法?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn