1、序列化:將乙個物件編碼成位元組流,反序列化:將位元組流編碼重構成物件;
2、序列化版本號serialversionuid:
沒有設定這個值的時候,會有乙個預設的(根據類名、介面名、成員名來生成),後續如果有變動預設的uid會不同,相容性會受到影響。invalidclas***ception
3、序列化可能夠破壞物件內部的約束關係;
4、date、biginteger(值類)和集合需要serializable,執行緒池一般不需要;
5、transient
a、類中的字段值可以根據其它字段推導出來;
b、根據業務需求,設定字段不想被序列化;
6、子類與父類序列化區別:
a. 如果子類實現serializable介面而父類未實現時,父類不會被序列化!
b. 如果父類實現序列化,子類自動實現序列化,不需要顯式實現serializable介面。
java 序列化 反序列化
序列化 bytearrayoutputstream bytearrayoutputstream new bytearrayoutputstream objectoutputstream objectoutputstream null try catch exception e finally byt...
java序列化與反序列化
參考 總結 1 被transient 修飾的屬性,是不會被序列化的 2 靜態屬性不會被序列化 3 序列化與反序列化的serialversionuid要一致 4 objectoutputstream代表物件輸出流 它的writeobject object obj 方法可對引數指定的obj物件進行序列化...
Java序列化與反序列化
當需要把乙個物件儲存在檔案 資料庫中,或是將其在網路上傳播的時候,就需要對其進行序列化。序列化和反序列化就是分別把物件轉成位元組序列和把位元組序列恢復成物件的過程。實現serializable介面是應用序列化與反序列化的一種方式。這個介面沒有方法,這種叫標記介面,表示實現這個介面的類可以被序列化。若...