abk*_*srv 5 java singleton enums deserialization
Java中枚举类型的默认反序列化被限制为readObject和readObjectNoDatathrow InvalidObjectException.因此,枚举类型非常适合实现没有任何缺陷的单例类(Item 77,Effective Java,2nd Edition,Bloch).
readObject
readObjectNoData
InvalidObjectException
Serializable
aba*_*aba 6
枚举类型实现,Serializable因此您可以序列化包含枚举常量的对象。枚举常量以与任何其他对象相同的方式反序列化:通过使用ObjectInputStream.readObject(). 枚举常量的编码方式与普通类的实例不同,因此ObjectInputStream.readObject()可以在不调用它们的readObject方法的情况下反序列化它们。还有其他使用特殊编码的类,其中包括String和Class。有关更多详细信息,请参阅文档。
ObjectInputStream.readObject()
String
Class
如果您想自己实现可序列化的单例类,请查看readResolve方法。
readResolve
归档时间:
13 年,2 月 前
查看次数:
1237 次
最近记录: