1、JDK對象序列化算法:算法
1.將對象實例相關的類元數據輸出ide
2.遞歸地輸出類的超類描述直到再也不有超類對象
3.類元數據輸出完以後,開始從最頂層的超類開始,輸出對象實例的實際數據繼承
4.從上到下遞歸輸出實例的數據遞歸
2、序列化信息:接口
- 序列化頭信息:序列化協議,版本
- 類信息:類的描述信息
- 屬性值:對象的屬性值
3、擴展JDK序列化:it
- 重寫readObject、writeObject方法。重寫序列化信息的第三部分屬性值。
- 實現Externalization接口。重寫序列化信息的第三部分屬性值。
- 繼承ObjectOutputStream、ObjectInputStream,重寫writeObjectOverride、readObjectOverride方法。徹底自定義序列化方式。