1. Java の内部クラス
1) 内部クラスとは: 内部クラス (Inner Class) は、別のクラスの種類で定義されます。同様に、内部クラスを含むクラスは外部クラスと呼ばれます。
2) あるクラスを別のクラス内で定義する必要があるのはなぜですか?
内部クラスの主な機能は次のとおりです:
1> 内部クラスはより優れたカプセル化を提供し、同じ外部クラス内に他のクラスを隠すことができます。このクラスにアクセスするためのパッケージ
2> 内部クラスのメソッドは、プライベートデータを含む外部クラスのすべてのデータに直接アクセスできます
3> 内部クラスによって実装される関数は、外部クラスを使用して実装することもできます。内部クラスを使用すると便利です
3) 内部クラスにはいくつかの種類があります: メンバー内部クラス、静的内部クラス、メソッド内部クラス、匿名内部クラス
2. Java のメンバー内部クラス
Innerクラス 最も一般的なのはメンバー内部クラスで、通常の内部クラスとも呼ばれます。次のコードを見てみましょう:
上記のコードから、メンバーの内部クラスの使用方法がわかります:
1. 内部クラスは外部クラスの内部で定義されており、これは次のメンバー変数と同等です。
2. 内部クラスで定義された test() メソッドは、外部クラスのデータに直接アクセスできます。外部クラス a
のプライベート プロパティに直接アクセスするなどのアクセス制御文字の影響を受ける。メンバーの内部クラスを定義した後、外部クラス オブジェクトを使用して内部クラス オブジェクトを作成する必要があり、直接作成することはできません。新しい内部クラス オブジェクト、つまり: 内部クラス オブジェクト名 = 外部クラス Object.new inner class();
4. 上記のプログラムをコンパイルすると、2 つの .class ファイルが生成されることがわかります
2 番目は外部クラスの .class ファイルで、1 番目は内部クラスです。クラス ファイル、つまりメンバーの内部クラスの .class ファイルは常に次のようになります: 外部クラス名 $ 内部クラス名。 class
さらに、注意事項:
1. 外部クラスは内部クラスのメンバーとメソッドを直接使用することはできません
最初に内部クラスのオブジェクトを作成し、その後、そのメンバー変数とメソッドにアクセスできます。内部クラスのオブジェクト。
2. 外部クラスと内部クラスが同じメンバー変数またはメソッドを持つ場合、内部クラスはデフォルトで独自のメンバー変数またはメソッドにアクセスします。 外部クラスのメンバー変数にアクセスしたい場合は、次のコマンドを使用できます。このキーワード。例:
例: エディタでメンバーの内部クラス Inner を定義し、内部クラスの show メソッドで外部クラスと内部クラスの属性値を出力します。
3. Java の静的内部クラス
静的内部クラスは、静的に変更された内部クラスです:
1) 静的内部クラスは、外部クラスの非静的メンバーに直接アクセスできません。ただし、 new 外部クラス().member を通じてアクセスできます
2) 外部クラスの静的メンバーが内部クラスのメンバーと同じ名前を持つ場合、外部クラスの静的メンバーは「class」を通じてアクセスできます。 name.static member"; if the external class 外部クラスの静的メンバー名が内部クラスのメンバー名と異なる場合は、「メンバー名」を通じて外部クラスの静的メンバーを直接呼び出すことができます
3 ) 静的内部クラスのオブジェクトを作成する場合、外部クラスのオブジェクトは必要なく、直接作成できます
内部クラスのオブジェクト名 = new inner class();
例:
4 . Javaのメソッド内部クラス
メソッド内部クラスは外部クラスのメソッド内で定義された内部クラスであり、メソッド内部クラスは内部的にのみ参照可能、つまりこの内部でのみ使用できます。方法。
追記: メソッドの内部クラスは外部クラスのメソッドの外では使用できないため、メソッドの内部クラスではアクセス制御と静的修飾子を使用できません。
5. 数学クラスのランダムメソッド
例: 数字当てゲーム
档文6. 制作ドキュメントの説明 RRREERREEEE
を 2 つ見つけます。 #
関連記事:
JAVA入門システムチュートリアル(5) 基本構文(3)JAVA入門システムチュートリアル(6) オブジェクト指向(カプセル化)
以上がJAVA入門システムチュートリアル(7) オブジェクト指向(カプセル化2)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。