我試圖序列化一個對象,然後在將數據發送到客戶端程序後將其反序列化。Java - 反序列化InvalidClassException(無效的構造函數)
下面是對象繼承如何工作的示例。我正在序列化和反序列化的對象是人。
生活 - >動物 - > NPC - >人物 - >兒童
生活,動物,和NPC不會實現Serializable。我無法改變這三個班級。 Person和Child做了Serializable。人與生活也是抽象類。我可以序列化一個人(他是一個孩子)併發送它,但是當我試圖反序列化Person(他是一個孩子)時,我在Child上得到一個InvalidClassException,並說「沒有有效的構造函數」。
這是怎麼發生的?必須生活,動物和NPC都實現Serializable?
可能相關:http://stackoverflow.com/questions/8632148/java-object-serialization-and-inheritance – leonbloy