1、序列化是干什么的?
內(nèi)存中的各種對象的狀態(tài)(也就是實例變量,不是方法),并且可以把保存的對象狀態(tài)再讀出來。
2、什么情況下序列化
a、對象需要持久化 (硬盤or數(shù)據(jù)庫)
b、網(wǎng)絡(luò)傳輸 (套接字orRMI)
c、在進程間傳遞對象
3、序列化ID的作用
java的序列化機制是通過在運行時判斷類的serialVersionUID來驗證版本一致性的。反序列化時,JVM會把傳來的字節(jié)流中的serialVersionUID與本地實體類中的serialVersionUID進行比較,如果相同則認為是一致的,便可以進行反序列化,否則就會報序列化版本不一致的異常。
4、序列化機制
a、保存到磁盤的所有對象都獲得一個序列號(1, 2, 3等等)
b、當要反序列化保存一個對象時,先檢查該對象是否被保存了。
c、如果以前保存過,只需寫入"與已經(jīng)保存的類具有相同序列號的對象"的一樣的標記就可,否則,保存該對象。
5、序列化方式
a、Serializable
b、Externalizable (類似android Parcelable)
5、其它
a、支持序列化和反序列化的基本類型有:String,Array,Enum和Serializable。類中的靜態(tài)變量不會序列化
b、transient來修飾不想要序列化的變量
c、 反序列化 ->ObjectOutPutStream(FileOutPutStream)
參照:https://blog.csdn.net/qq_16628781/article/details/70049623
https://www.cnblogs.com/csguo/p/7571741.html
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國云服務(wù)器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機房獨有T級流量清洗系統(tǒng)配攻擊溯源,準確進行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動現(xiàn)已開啟,新人活動云服務(wù)器買多久送多久。