匿名の内部クラスから外部クラスのメソッドにアクセスするにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-11 01:45:02
オリジナル
385 人が閲覧しました

How to Access Methods of the Outer Class from an Anonymous Inner Class?

匿名の内部クラスから外部クラスへのアクセス

匿名の内部クラス内で、外側の外部クラスのメンバーにアクセスするには、以下を使用します。特定の構文。

次のコードを考えてみましょう。 snippet:

public class Outer {
    public void otherMethod() {}
    public void doStuff(String str, InnerClass b) {}
    public void method(Outer a) {
        doStuff("asd", new InnerClass() {
            public void innerMethod() {
                // How to access outer.otherMethod() here?
            }
        });
    }
}
ログイン後にコピー

匿名の内部クラスから外部クラスのouterMethod()メソッドにアクセスするために、JavaはOuterClassName.this構文を提供します。この場合、次のように使用します。

Outer.this.otherMethod();
ログイン後にコピー

これにより、匿名内部クラスは、あたかも内部クラス自体内で定義されているかのように、外部クラスのメンバーにアクセスできるようになります。したがって、 innerMethod() 内のコードは、構文

Other.this.otherMethod();
ログイン後にコピー
を使用して、outerMethod() にアクセスできるようになりました。

以上が匿名の内部クラスから外部クラスのメソッドにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート