Java では、内部クラスは、外部クラスと呼ばれる別の囲みクラス内に存在するネストされたクラスです。驚くべきことに、外部クラスは、内部クラスのプライベート インスタンス変数にアクセスする機能を備えています。
説明:
Java 内部クラスは、真に独立したエンティティではなく、むしろ次の拡張です。それらを囲むクラス。これは、外部クラスのスコープを継承し、すべてのプライベート メンバーへのアクセスを許可することを意味します。
この設計上の決定の背後にある理論的根拠は、内部クラスと外部クラスの密接な関係にあります。内部クラスは基本的に、外部クラスに密接に関連する特定の機能をカプセル化します。したがって、外部クラスのプライベート メンバーにアクセスできるようにすると、コードの編成と保守性が向上します。
例:
次のコード スニペットを考えてみましょう:
class ABC{ class XYZ{ private int x=10; } public static void main(String... args){ ABC.XYZ xx = new ABC().new XYZ(); System.out.println("Hello :: "+xx.x); } }
この例では、外部クラス ABC は、内部クラス XYZ のプライベート インスタンス変数 x にアクセスできます。これが許容されるのは、内部クラス XYZ が外部クラスの拡張であり、そのスコープを継承し、ABC にそのプライベート変数へのアクセスを提供するためです。
結論として、外部クラスは内部クラスのプライベート メンバーにアクセスできます。それらの間の固有の関係から生じており、便利で組織化されたコード構造を可能にします。
以上が外部 Java クラスはどのように内部クラスのプライベート メンバーにアクセスできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。