- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个抽象类 Screen
和子类:GameScreen
、SpellScreen
、StatsScreen
等
游戏以这种方式运行:Renderer
类创建一个根
Screen screenRoot = new GameScreen()
然后它可以自由地为自己添加屏幕,然后它可以为自己添加屏幕等等。因此形成了一个树状结构,每个屏幕都包含其子屏幕的列表。
现在我想知道是否可以对其执行序列化和反序列化 - 我想在同一层次结构中重新创建所有屏幕。
仅序列化 screenRoot 对象然后反序列化它就足够了吗(前提是我想保留整个屏幕树),还是我需要自己以某种方式遍历树?
你会如何序列化它?
附言该游戏适用于 Android,并使用 OpenGL ES 2.0。
最佳答案
对象层次结构并不妨碍使用 Java 序列化,因为后者可以处理任意对象图 - 是的,使用 Java 序列化序列化一个对象将序列化它引用的所有对象(除非该引用被标记为 transient
)。假设这就是您想要的,序列化层次结构非常简单:
try (ObjectOutputStream oos = new ObjectOutputStream(new BufferedOutputStream(new FileOutputStream(filename)))) {
oos.write(rootScreen);
}
和阅读一样简单:
try (ObjectInputStream ois = new ObjectInputStream(new BufferedInputStream(new FileInputStream(filename)))) {
return (GameScreen) ois.readObject();
}
关于java - 在java中序列化对象的层次结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20684719/
我正在尝试将多个水平链接的 Button 和 TextView 垂直链接为 View 集,但仍保持平面 View 层次结构。这是我的初始布局和代码:
到目前为止,我已经在Google BigQuery上训练了几种模型,目前我需要查看模型的外观(即架构,损失函数等)。 有没有办法获取这些信息? 最佳答案 仔细阅读文档后,我可以说该功能尚不存在。我什至
本文实例讲述了PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)。分享给大家供大家参考,具体如下: 前言: 深度优先遍历:对每一个可能的分支路径深入到不能再深入为止,而且每个
我是一名优秀的程序员,十分优秀!