【发布时间】:2011-01-07 22:18:34
【问题描述】:
我有一个问题,例如我有一个 GameStartegy 类,它有 53 个字段,所有的类型都是一个接口,例如 Strategy,其中一个字段是 Date,当我们创建对象时将被初始化,如何我创建了一个可序列化的对象??我应该序列化所有字段,如日期吗?谢谢
【问题讨论】:
-
还有作业问题...有一些 homeworkoverflow.com 吗?
标签: java serializable
我有一个问题,例如我有一个 GameStartegy 类,它有 53 个字段,所有的类型都是一个接口,例如 Strategy,其中一个字段是 Date,当我们创建对象时将被初始化,如何我创建了一个可序列化的对象??我应该序列化所有字段,如日期吗?谢谢
【问题讨论】:
标签: java serializable
只要类实现了Serializable接口,就可以序列化。
下面是java中序列化的介绍:
http://www.javacoffeebreak.com/articles/serialization/index.html
【讨论】:
首先你需要实现可序列化的接口,它是标记接口,一旦你的类实现了该接口,那么你就可以拥有可序列化的对象......
【讨论】:
好的,java.util.Date 是可序列化的,所以这应该不是问题。
如果您有不需要保存的成员字段,您可以使它们瞬态瞬态成员不会被序列化。所以你可以有这样的课程
class A implements Serializable{
int a;
transient NonSerialzableObject n;
}
应该可以的。
您还可以通过实现以下函数来创建自定义序列化函数:
private void writeObject(java.io.ObjectOutputStream out) throws IOException
private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException;
【讨论】: