#77指出,在序列化过程中,我们必须使用readResolve来保存单例监护器。他们用了这个例子。private Elvis() { ... }他们建议用
// readResolve for instance control - you can do better!private Object readResolv
为了维护单例保证,声明所有实例字段是瞬态的,并提供一个readResolve方法。否则,每次序列化实例被反序列化时,都会创建一个新实例,在我们的示例中,将导致虚假的猫王目击事件。要防止这种情况发生,请将此readResolve方法添加到Elvis类中:privateObject readResolve() // Return the one