How can I implement serialization on my own. Meaning I don’t want my class to implement serializable. But I want to implement serialization myself. So that without implementing serializable I can transfer objects over network or write them to a file and later retrieve them in same state. I want to do it since I want to learn and explore things.
Share
Serialization is the process of translating the structure of an object into another format that could be easily transfered across network or could be stored in a file. Java serializes objects into a binary format. This is not necessary if bandwidth/disk-space is not a problem. You can simply encode your objects as XML:
Now you can get an object’s XML representation and “serialize” it to a file or a network connection. A program written in any language that can parse XML can “deserialize” this object into its own data structure.
If you need a more compact representation, you can think of binary encoding:
To learn about a more compact binary serialization scheme, see the Java implementation of Google Protocol Buffers.