我收到java.io.NotSerializableException。從外部API序列化對象
如何序列化不執行java.io.Serializable
的對象?
我想序列化它在一個流中。
我想從外部API序列化一個對象。我無法修改這個API。
在外部API,這個對象沒有實現當然java.io.Serializable
有私人領域,但也有大量的getter和setter方法。 有公共靜態字段,並且沒有無參數構造函數,實際上,沒有構造函數。
我認爲很難序列化它,不是嗎? 有什麼建議嗎?
問題是,這個ExternalAPIClass使用了一個不可序列化的對象。 – Jvrq 2011-12-22 17:56:45
問題是,這個ExternalAPIClass使用了一個不可序列化的對象。我需要重寫這個AnotherEXternalAPIClass嗎? – Jvrq 2011-12-22 18:03:17
那麼在這種情況下,應該可以從您的子類(MyClass)訪問您的超類的不可序列化部分,並且您可以編寫自己的方法來自定義這些部分的序列化。另外,請注意你的超類(ExternalAPIClass)在這種情況下應該有一個默認的無參數構造函數。 實現writeObject()和readObject()並對那些不可序列化的字段進行手動序列化/反序列化。 – 2011-12-22 18:22:54