If you are a serializable class, but your superclass is not serializable, then any instance variables you inherit from that superclass will be reset to the values they were given during the original construction of the object. This is because the non-serializable class constructor will run!
My question is that here object comes from serialization, not created using new. Then what invoke the constructor of non-serializable superclass?