It is marked as transient because it is not safe to use the default serialization scheme in the Entry array. Rather, when the Hashtable is deserialized, the keys in the table must be overwritten, and the records must be added to the slots according to the new hash code values. This is necessary because keys can have different hash codes after deserialization ... for various reasons. This work will be done by the Hashtable method readObject().
source
share