The running result proves that this method is correct. Here we use the writeObject/readObject method. If this method exists, it will be called during serialization to replace the default behavior (we will discuss it later and learn more ). During serialization, we first call the defaultWriteObject of ObjectOutputStream, which uses the default serialization behavior and then serializes the parent class domain. This is also true for deserialization.
To sum up:
Target Behavior
For a parent class that implements the Serializable interface, compile a subclass class that can be serialized to automatically implement serialization.
For a parent class that does not implement the Serializable interface, write a Serializable subclass 1. The parent class must have a constructor without parameters; 2. The subclass must first serialize itself, then the subclass is responsible for serializing the parent class's domain.