デフォルトのドロップイン置換としてhttp://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/VERSIONS/JAVA/MTRandom.javaで Mersenne-Twister 実装を使用していました。java.util.Randomクラス。ただし、4 つのフィールド (int、boolean、および 2 つの byte[]) は としてマークされtransientます。これは、カスタム機能を実装しないと、このクラスのオブジェクトをシリアル化できないことを意味します。
問題は、これらのフィールドが一時的とマークされている理由があるかどうかです。オブジェクトがファイルから読み取られたときに意味をなさない情報を保持するコードはありますか? フィールドから修飾子を削除したtransientところ、問題なく動作しているように見えますが、集中的にテストしていないため、壊れる場合がありますか?
個人的には、クラスで行われるのは算術だけなので、その理由はわかりません。