リフレクションを介して「ReflectMe」クラスを検査しています。
getDeclaredFields メソッドを使用して、「str」フィールドを取得しました。
ここで、静的メソッドがそのフィールドに割り当てられているクラス「Target」を取得する必要があります。
出来ますか?
コード:
package myproj.reflect;
public class Target {
public static final String theString = "abcd";
}
package myproj.reflect;
public class ReflectMe {
private String str = Target.theString;
}
public static void main(String[] args) {
ClassLoader loader = ClassLoader.getSystemClassLoader();
String theclass = "myproj.reflect.ReflectMe";
Class myClass = loader.loadClass(theclass);
Field[] fields = myClass.getDeclaredFields();
}
}
つまり、「Target」クラスを取得する必要があります。