我有一个简单的数据结构,可以进行序列化和反序列化。在反序列化时,我希望数据结构本身能够进行后续处理步骤。在我们的情况下,它应该只是对其包含的所有字符串调用String.intern()。
有没有一种方法可以在内部调用默认/标准反序列化?(这样我们就可以在之后添加我们的小步骤)
谢谢!
Arnaud
预先回答无关问题:
为什么你不在通常反序列化对象之后再执行这个操作?
- 这个对象在很多地方进行了序列化/反序列化
- 这个数据结构是更大的对象的一部分,这些对象也被序列化/反序列化,所以您还需要在反序列化后浏览任何封装对象
- 使用框架的其他开发人员可能不知道或忘记这个步骤,这将导致一个巨大的错误磁铁
- 这会很丑陋
为什么你首先要使用String.intern()?
出于性能原因。我们进行了大量的文本处理和计算,需要这样做。
换句话说,在:
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException;
有没有一种方法可以在内部调用默认/标准反序列化?(这样我们就可以在之后添加我们的小步骤)
谢谢!
Arnaud