匿名内部クラスから外部クラス インスタンスへのアクセス
Java では、匿名内部クラスは、明示的な名前のないネストされたクラスです。これは通常、イベント ハンドラーを実装したり、外部クラスの抽象メソッドをオーバーライドしたりするために使用されます。
InnerClass パラメーターを受け取る doStuff というメソッドを持つ a という名前の外部クラスがあるとします。外部クラス内で、doStuff へのパラメーターとして匿名内部クラスを作成します。
匿名内部クラス内から、otherMethod などの外部クラスのメソッドにアクセスしたいとします。匿名の内部クラスから外部クラスのインスタンスを参照するにはどうすればよいですか?
その答えは、OuterClass.this 構文を使用することにあります。この式を使用すると、外側のクラスの外側のインスタンスにアクセスできます。この例では、匿名の内部クラスから otherMethod を呼び出すには、次を使用します:
a.this.otherMethod();
この構文により、外部クラスの正しいインスタンスを参照していることが保証されます。スコープ内にクラスのインスタンスが複数ある場合でもクラス。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3