把物件轉換為位元組序列的程序稱為物件的序列化,
把位元組序列恢復為物件的程序稱為物件的反序列化,
物件的序列化主要有兩種用途:
1) 把物件的位元組序列永久地保存到硬碟上,通常存放在一個檔案中;
2) 在網路上傳送物件的位元組序列,
s?e?r?i?a?l?V?e?r?s?i?o?n?U?I?D?:? ?字?面?意?思?上?是?序?列?化?的?版?本?號?,凡是實作Serializable介面的類都有一個表示序列化版本識別符號的靜態變數
serialVersionUID的取值是Java運行時環境根據類的內部細節自動生成的,如果對類的源代碼作了修改,再重新編譯,新生成的類檔案的serialVersionUID的取值有可能也會發生變化,
類的serialVersionUID的默認值完全依賴于Java編譯器的實作,對于同一個類,用不同的Java編譯器編譯,有可能會導致不同的 serialVersionUID,也有可能相同,為了提高serialVersionUID的獨立性和確定性,強烈建議在一個可序列化類中顯示的定義serialVersionUID,為它賦予明確的值,
顯式地定義serialVersionUID有兩種用途:
1、 在某些場合,希望類的不同版本對序列化兼容,因此需要確保類的不同版本具有相同的serialVersionUID;
2、 在某些場合,不希望類的不同版本對序列化兼容,因此需要確保類的不同版本具有不同的serialVersionUID,
這個我也沒太弄明白,等有空的時候好好整理下,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/248847.html
標籤:Java
上一篇:java中static關鍵字
下一篇:FlatBuffers 使用小結
