ホームページ >Java >&#&チュートリアル >Java の匿名内部クラスはどのようにして外部クラスのメンバー変数にアクセスするのでしょうか?
匿名内部クラスは、this キーワードを通じてプライベート変数を含む外部クラスのメンバー変数にアクセスし、匿名内部クラス自体がこれらの変数を宣言したかのように、this を通じて外部クラスのメンバー変数にアクセスします。
匿名内部クラスは、名前のない内部クラスであり、通常は 1 回限りの使用クラスを作成するために使用されます。匿名の内部クラスは、プライベート変数を含む外部クラスのメンバー変数にアクセスできます。
アクセスメカニズム:
匿名内部クラスは、this
キーワードを通じて外部クラスのメンバー変数にアクセスします。 this
キーワードは、匿名の内部クラスのインスタンスを指します。これは、実際にはその外部クラスのインスタンスです。したがって、this
は、あたかも匿名内部クラス自体がこれらの変数を宣言したかのように、外部クラスのメンバー変数に直接アクセスできます。 this
关键字来访问外部类的成员变量。this
关键字指向匿名内部类的实例,它实际上是其外部类的实例。因此,this
可以直接访问外部类的成员变量,就像匿名内部类本身声明了这些变量一样。
实战案例:
我们创建一个具有私有成员变量 secret
的外部类 OuterClass类
,并创建一个匿名内部类来访问该变量:
public class OuterClass类 { private int secret = 42; public static void main(String[] args) { OuterClass类 outer = new OuterClass类(); Runnable r = new Runnable() { @Override public void run() { System.out.println("匿名内部类的 secret:" + this.secret); } }; r.run(); } }
当运行这个程序时,它将输出:"匿名内部类的 secret:42"。这是因为匿名内部类能够通过 this
访问外部类 OuterClass类
的私有变量 secret
実際的なケース:
プライベートメンバー変数secret
を持つ外部クラス OuterClass class
を作成し、変数にアクセスするための匿名内部クラスを作成します: this
を通じて外部クラス OuterClass
のプライベート変数 secret
にアクセスできるためです。 以上がJava の匿名内部クラスはどのようにして外部クラスのメンバー変数にアクセスするのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。