【发布时间】:2014-05-23 20:14:56
【问题描述】:
假设你有以下结构(简化):
interface Inter
{
//...
}
class Impl1 implements Inter, Serializable
{
private static final long serialVersionUID = ...;
//...
}
class Impl2 implements Inter, Serializable
{
private static final long serialVersionUID = ...;
//...
}
class MyClass implements Serializable {
private static final long serialVersionUID = ...;
Inter interInstance; // can be Impl1, Impl2...
}
稍后,您添加一个新的实现:
class Impl3 implements Inter, Serializable
{
private static final long serialVersionUID = ...;
//...
}
...最终得到 MyClass.interInstance 可以假设的三个类。
这应该对已经序列化的 MyClass 对象有什么影响吗?
我问这个是因为用户(Android 应用程序)一直抱怨在更新后无法打开某些序列化对象,其中更改模仿了上面的示例(即我只添加了一个新的可序列化接口实现) .
【问题讨论】:
标签: java android serialization serializable