У меня есть абстрактный класс Screen
и дочерние классы: GameScreen
, SpellScreen
, StatsScreen
и т.д.Сериализация иерархическую структуру объектов в Java
Игра работает таким образом: а Renderer
класс создает корень
Screen screenRoot = new GameScreen()
, который затем может бесплатно добавлять к себе экраны, которые затем могут добавлять экраны к себе и, таким образом, они уходят. Поэтому формируется древовидная структура, каждый экран содержит список его дочерних экранов.
Теперь мне интересно, можно ли выполнять сериализацию и десериализацию - я хотел бы воссоздать все экраны в одной иерархии.
Достаточно ли сериализовать только объект screenRoot, а затем десериализовать его (при условии, что я хочу сохранить дерево всех экранов), или мне нужно каким-то образом пересечь дерево?
Как бы вы это сделали?
P.S. игра для Android и использует OpenGL ES 2.0.
Я предлагаю разделения UI, логики и данных (MVC), так что вы можете использовать POJO, как простые типизированные объекты данных для сериализации (возможно, с использованием Json или XML с JAXB) – Sam