Primitive data types are passed by value.
Java only supports pass by value. With objects, the object reference itself is passed by value and so both the original reference and parameter copy both refer to the same object.
Serialization is a mechanism by which you can save the state of an object by converting it to a byte stream.
The class whose instances are to be serialized should implement an interface Serializable. Then you pass the instance to the ObjectOutputStream which is connected to a fileoutputstream. This will save the object to a file.
The serializable interface is an empty interface, it does not contain any methods. So we do not implement any methods.