1

我有点困惑。假设我有一个由一些瓷砖和玩家组成的游戏。所有这些对象都需要保存,以便我以后可以开始游戏并恢复状态。我已经使用 XML 文件或纯文本文件等简单文件执行此操作,我只需将图块类型和坐标打印到文件中,然后读取,然后根据文本文件中的信息解析和创建新对象。

我的问题是,当我可以将对象的属性保存到文本文件时,为什么还要序列化它们?许多游戏是否会序列化他们的对象而不是使用文本文件?有什么好处吗?我可以想象序列化会保存对象的一个​​实例,这样您就不必稍后创建对象的新实例,就像您必须使用文本文件一样。但我真的不知道!

4

3 回答 3

1

java中序列化的主要好处是您不必像现在这样手动读取/写入文件。您只需要实现Serializable接口,java 会处理它。

这是在 Java 中使用序列化的一个很好的教程:http ://www.tutorialspoint.com/java/java_serialization.htm

于 2013-10-14T14:49:02.710 回答
1
  1. 我猜序列化会以二进制格式写入内容,因此它会比相应的文本消耗更少的空间

  2. 你可以直接从序列化文件中获取java对象

  3. 使用序列化时不会保存静态变量状态

于 2013-10-14T14:49:23.257 回答
1
  1. 您可以通过 UID 进行版本控制。
  2. 它很快。
  3. 你不需要额外的代码。
于 2013-10-14T14:51:49.767 回答