Философия Java


Использование устойчивости - часть 6


Это то, для чего нужны статические методы serializeStaticState( ) и deserializeStaticState( ) в Line. Вы можете видеть, что они явно вызываются как часть процесса сохранения и восстановления. (Обратите внимание, что порядок записи в файл сериализации и чтения из него должен сохранятся). Таким образом, чтобы CADState.java работал корректно, вы должны:

  1. Добавить serializeStaticState( ) и deserializeStaticState( ) к образам.
  2. Удалить ArrayList shapeTypes и весь код, относящийся к нему.
  3. Добавить вызов новых статических методов сериализации и десериализации образов.

Другую проблему вы можете получить, думая о безопасности, так как сериализация сохраняет данные с модификатором private. Если вы имеете проблемы безопасности, эти поля должны помечаться, как transient. Затем вы должны разработать безопасный способ для хранения такой информации, чтобы когда вы делали восстановление, вы могли установить эти private переменные.




Начало  Назад  Вперед