【发布时间】:2013-03-09 21:33:27
【问题描述】:
我有一个如下所示的 Java 枚举:
public enum ExecutionMode {
TYPE_A,
TYPE_B,
TYPE_C;
private ExecutionMode(){} //no args constr- no really required
private boolean incremental; //has get/set
private String someStr; //has get/set
}
我看到反序列化后,枚举上的自定义字段丢失了。 在阅读更多关于它的信息时,我的印象是 enum 被反序列化为字符串,因此它的自定义字段被忽略了。
如果它是真的,我是否在这里滥用 Enum 并且应该只使用 POJO 代替? 或者有没有办法序列化自定义字段(不是构造函数的一部分)?
谢谢!
【问题讨论】:
-
跟着 pojo 去吧。有关
Enum序列化的信息,请参见此处的链接:docs.oracle.com/javase/1.5.0/docs/guide/serialization/…
标签: java serialization enums custom-fields