一個類實作Serializable這個介面后寫一個固定的序列化版本號private static final long serialVersionUID這個變數名serialVersionUID可以改成其他的嗎 ?這個變數名哪里來的,私有的應該不是繼承過來的吧
uj5u.com熱心網友回復:
兩種生成策略,一個是固定的 1L,一個是隨機生成一個不重復的 long 型別資料(實際上是使用 JDK 工具生成)uj5u.com熱心網友回復:
serialVersionUID名稱不能修改成別的,是在jdk核心包規范里面就規定了名稱的。uj5u.com熱心網友回復:
可以,因為這個變數可以不定義,系統會根據編譯的class自動生成一個比較用的serislVersionUID如果不希望通過編譯來劃分版本,就要自己顯示定義這個變數
該變數是用來判斷反序列化時,目標class的版本是否和序列化時的版本一樣,如果一樣則可反序列化,否則就出例外
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/257273.html
標籤:Java SE
下一篇:Java資料結構中的遞回
