I'm trying to serialize an object and then deserialize it after sending its data to a client program.
Here's an example of how the object's inheritance works. The object I'm serializing and deserializing is person.
Living -> Animal -> NPC -> Person -> Child
Living, Animal, and NPC do not implement Serializable. I can not change those three classes. Person and Child do implement Serializable. Person and Living are also abstract classes. I can serialize a Person (who is a Child) just fine and send it, but when I attempt to deserialize a Person (who is a Child), I get an InvalidClassException on Child, saying "no valid constructor".
Why is this happening? Must Living, Animal, and NPC all implement Serializable?