I am not able to clear this confusion of mine,
Externalizable is used because we can give our own (more efficient) implementation of serialization-deserialization using read/writeExternal method. And control the serialization process.
We can also use read/writeObject method and serialization process will be overridden with that.
Then why is Externalizable even required?
Why would someone prefer read/writeExternal over read/writeObject?