B クラスの b は Method.setAccessible() と Method.set() を使えばできる。
A クラスの a を インスタンスBが作成された時点で書 き換えたいのですが、シリアライズで PrivateUtil な るユーティリティ経由で synchronized ロックしてごに ょごにょすれば出来そうな予感があるのですが、 public class PrivateUtil { public static Object lock = new Object(); private static Object obj;
public static void setVal(Object o) { synchronized(lock) { obj = o; } } public static int getInt() { if (obj instanceof Number) return ((Number)obj).intValue(); throw new RuntimeException("dame;;"); } } 出来そうな予感だけで実際に試してないのです。試した くないくらい嫌な予感しかしないので、なんとか、シリ アライズ以外で何か方法ありませんか?