以下のコードスニペットが見つかりました:
import java.lang.reflect.Field;
public class Test {
public static void main(String[] args) {
System.out.println("Inside main");
}
static {
try {
Field value = String.class.getDeclaredField("value");
value.setAccessible(true);
value.set("Inside main", value.get("Inside static bolck"));
} catch (Exception e) {
throw new AssertionError(e);
}
}
}
私の理解によると、出力はあるはずですInside static bolck
が、出力はInside stat
、と同じ文字長のInside main
。
* Inside mainの長さを増やすと、出力の長さも長くなります。
誰か説明してもらえますか?リフレクションについてはあまり知識がありません。