java - 保存游戏状态

标签 java

我正在制作一个仅打字的游戏(无图形),我需要保存游戏的状态并稍后重新加载。我一直在想,但什么也想不出来(我不是一个非常有经验的程序员)。有人可以启发我吗?

最佳答案

您需要您的类实现Serialized接口(interface)。然后将对象写入文件。然后在启动时再次读回该文件。

To serialize an object means to convert its state to a byte stream so that the byte stream can be reverted back into a copy of the object. A Java object is serializable if its class or any of its superclasses implements either the java.io.Serializable interface or its subinterface, java.io.Externalizable. Deserialization is the process of converting the serialized form of an object back into a copy of the object.

Serialzable 接口(interface)的优点在于您不需要实现任何方法。它是一个标记接口(interface)。您只需创建一个类Serialized,然后将其写入文件即可。

这里请注意:每次写入文件时都需要截断该文件。不要尝试向其中附加数据。它损坏了文件头。

教程在这里:http://docs.oracle.com/javase/tutorial/jndi/objects/serial.html

关于java - 保存游戏状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19784628/

相关文章:

java - 如何在多模块 Maven SVN 项目中的另一个模块中正确使用另一个模块的类?

java - 在 SQliteDatabase 中保存图像时出现 OutOfMemoryError

java - 防御性编程的编辑器模板

java - 在 XML 和 Java 中创建 View 然后在以后引用和加载它们?

java - 是否鼓励使用方法变量而不是类变量进行单元测试?

java - Web 应用程序 - 身份验证/登录框架

java - 将 vector 图像添加到 Google Maps Android API v2

java - 如何多次运行一个jar文件?中央操作系统

java - Tomcat 中 WebJars 的 Spring Boot 上下文路径

java - OSGi类加载: why does BND imports classes that are not referenced directly?