Javaネストクラスの特徴

Java のネスト内のクラスの機能には次のようなものがあります。

  1. 内部クラスは、私有メンバーを含む外部クラスのメンバー変数とメソッドにアクセスできます。
  2. 外部クラスは、内部クラスのプライベートなメンバにアクセスできる。
  3. 内部クラスは、private、protected、public、およびdefault(パッケージプライベート)のアクセス修飾子で宣言できます。
  4. ネストしたクラスは外部クラスの静的メンバーにアクセスすることができ、静的変数や静的方法が含まれます。
  5. 内部クラスは、関連するクラスやインターフェイスをまとめてコードをカプセル化および整理する方法として利用できます。
  6. 内部クラスは外部クラスのインスタンスを暗黙的に参照しており、外部クラスのインスタンスを介して内部クラスのインスタンスを作成できる
  7. 内部クラスは外部クラスの final なローカル変数にアクセスできるが、その変数は final である必要がある。
  8. 内部クラスは多重継承が可能で、1つの内部クラスが複数のインターフェイスを実装できます。
  9. 内部クラスは静的メソッドからアクセスできますが、アクセスできるのは外部クラスの静的メンバーだけです。
  10. 内部クラスは外部クラスの非staticメンバーにアクセスできます。この際内部クラスがstaticでも構いません。

内部クラスの具体的な性質はメンバー内部クラス、ローカル内部クラス、匿名内部クラスなど、内部クラスの種類によって変わりますが、一般に共通の性質として以下のようなものがあります。

bannerAds