我正在研究Java中的序列化函数,理想情况下应该使用任何实现接口的类(类似于Serializable)。作为其中的一部分,我想跟踪自动实现序列化界面的对象的更改。为了做到这一点,我试图克隆最后写入的对象 - 从持久性和内存中读取时只有更改版本。但是,我无法想出一个正确的方法来在两个(原始的和改变的)对象之间建立一个不会消耗大量内存的对象。到目前为止,我已经考虑过几种方法来解决这个问题:
我在这里缺少其他明显的东西吗?有什么方法可以解决上述问题吗?
答案 0 :(得分:1)
由于似乎没有更好的方法,我将编写一些代码来自动扩展要序列化的对象的类。新的子类将克隆作为成员,但除序列化代码外,将被视为超类。我从中看到的唯一冲突来自Object.getClassName()及其相关功能(instanceof)。也许我可以想出一种覆盖getClassName方法的方法。我希望有一种更简单的方法来获得这种透明度。