Java の内部クラス情報を取得する方法
Javaの内部クラスに関する情報を得るには、Javaのリフレクション機構を活用することができます。その詳しい手順は以下のとおりです。
- ClassクラスのgetDeclaredClassesメソッドを使用して、内部クラスを含むClassオブジェクトの配列を取得します。
- 内部クラスのClassオブジェクトの配列を走査する際、ClassクラスのgetModifiersメソッドを利用して内部クラスの修飾子を取得でき、getSimpleNamメソッドでは内部クラスの単純なクラス名を取得し、getCanonicalNameメソッドでは内部クラスの完全修飾クラス名などの情報を取得できます。
内部クラスの情報を取得する方法の例コードを以下に示します。
public class OuterClass {
private static class InnerClass {
// 内部类的定义
}
public static void main(String[] args) {
Class<?>[] innerClasses = OuterClass.class.getDeclaredClasses();
for (Class<?> innerClass : innerClasses) {
int modifiers = innerClass.getModifiers();
String className = innerClass.getSimpleName();
String canonicalName = innerClass.getCanonicalName();
System.out.println("Modifier: " + modifiers);
System.out.println("Simple name: " + className);
System.out.println("Canonical name: " + canonicalName);
}
}
}
このコードは、内部クラスの修飾子、簡潔なクラス名、完全修飾クラス名などの情報を表示します。