3

我重写了这些方法readObject/writeObject以自定义我的对象的序列化。问题是这些方法没有参数。无论如何在这些方法中传递参数以便我可以在我的序列化过程中使用它们?

先感谢您

4

2 回答 2

1

不,没有传递参数的选项,而且你为什么需要这样做。

序列化,反序列化是写入和读取一个对象状态的过程,所以你的类在被序列化或反序列化之前应该具有其中的所有属性。

应该没有任何理由将参数传递给这两种方法。

于 2012-06-05T12:14:16.373 回答
0

您不能更改读/写方法的签名。一种解决方法是设置序列化参数并将其存储在对象中,并在读/写方法中使用它们。

或者您可以创建一个静态类,例如 SerializationParameter,并将您的序列化参数存储在那里。由于它们是静态的,因此您不必为每个序列化对象在内存中复制它们。

于 2012-06-05T12:17:08.407 回答