What is object serialization and how to implement it?

Copied from Link 1, Link 2

To serialize an object means to convert its state to a byte stream so that the byte stream can be reverted back into a copy of the object.

A Java object is serializable if its class or any of its superclasses implements the java.io.Serializable interface.

JSON is concise, human-readable and efficient. Android includes both a streaming API and a tree API to read and write JSON. Use a binding library like GSON to read and write Java objects directly.