執行結果證明此方法正確。此處使用了 writeObject/readObject 方法,若存在則序列化時會被調用,取代預設行為。序列化時先調用 ObjectOutputStream.defaultWriteObject() 執行預設序列化,再手動序列化父類別欄位;反序列化同理。
| 目的 | 行為 |
|---|---|
| 為實作 Serializable 的父類別撰寫可序列化的子類別 | 子類別自動實現序列化 |
| 為未實作 Serializable 的父類別撰寫可序列化的子類別 | 1. 父類別需有無參建構子 2. 子類別先序列化自身,再負責序列化父類別欄位 |