我对序列化有点困惑。
我有一个类,我们称它为 Container。Container 类的变量包含其他类的 ArrayLists - A、B、C 等...
如果我要序列化并保存 Container,那么在读回它之后(并且,为了清楚起见,我了解如何执行该部分),我是否可以访问 A、B 等类的相同实例,或者他们需要单独序列化?此外,A、B 等是否需要实现 Serializable 是否被 Container 覆盖?
提前致谢
我对序列化有点困惑。
我有一个类,我们称它为 Container。Container 类的变量包含其他类的 ArrayLists - A、B、C 等...
如果我要序列化并保存 Container,那么在读回它之后(并且,为了清楚起见,我了解如何执行该部分),我是否可以访问 A、B 等类的相同实例,或者他们需要单独序列化?此外,A、B 等是否需要实现 Serializable 是否被 Container 覆盖?
提前致谢
这取决于Collection
您使用的序列化方式。
如果您使用的是,ArrayList
那么它将序列化List
.
为了对内容进行序列化,还需要对内容进行标记,implement Serializable
否则需要对其进行标记transient
。
所以,回答你的两个问题:
众所周知,序列化是将对象保存在存储介质(如文件或内存缓冲区)中或以二进制形式通过网络连接传输的过程。序列化的对象是独立于 JVM 的,并且可以被任何 JVM 重新序列化。阅读 这里的好例子。
.