什么是序列化?為什么要實現序列化?有什么作用?
?? ??? ?序列化就是把具體的對象轉化成二進制的字節碼文件進行存儲或網絡傳輸。反過來就是反序列化。
?? ??? ?將要存儲或網絡傳輸的對象必須實現序列化才可以。
?? ??? ?如果一個類已經實現了序列化那么他的子類默認也實現了序列化。
?? ??? ?如果某實例變量不能被實例化可以使用 transient 聲明。
?? ??? ?當對象被序列化時,被該對象引用的所有對象也被序列化。且所有被引用的對象都將被序列化。
?? ??? ?解序列化時,transient聲明的基本數據類型為默認值0,引用類型默認為 null,boolean 為 false。
?? ??? ?靜態變量不會被序列化,因為靜態變量和對象實例無關,所有對象共享一份靜態變量值。
?? ??? ?對象序列化時會根據類的結構生成序列號,對象會根據序列號來序列化和反序列化。如果已經生成文件的序列號和將要生成對象的序列號不一致會拋出異常。
轉載于:https://www.cnblogs.com/guofz/p/10287799.html