[英]why enum are serializable differently in java
關於枚舉和序列化有很多折磨,我也在sun上閱讀了這篇文章,但是找不到如何對其進行序列化。
枚舉常量的序列化與普通可序列化或可外部化的對象不同。 枚舉常量的序列化形式僅由其名稱組成; 常量的字段值不存在於表單中。 為了序列化枚舉常量,ObjectOutputStream寫入由枚舉常量的name方法返回的值。 為了反序列化枚舉常量,ObjectInputStream從流中讀取常量名稱。 然后,通過調用java.lang.Enum.valueOf方法,將常量的枚舉類型與接收到的常量名稱一起作為參數來獲取反序列化的常量。
任何例子都將不勝感激。
所有枚舉類型都隱式擴展了已經實現Serializable的java.lang.Enum
。 因此,您沒有要采取的特定操作,已經為您完成。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.