Рассмотрим следующую ситуацию:
Существует файл сериализации, созданный старой версией приложения. К сожалению, пакет изменился для класса, который был сериализован. И теперь мне нужно загрузить информацию из этого файла в тот же класс, но находится в другом пакете. Этот класс имеет serialVersionUID
, определенный и не измененный (т.е. Совместимый).
Вопрос: Можно ли загружать новые экземпляры класса из этого файла с помощью любых трюков (кроме тривиального копирования класса в старый пакет, а затем с использованием логики оболочки десериализации)? Можно ли использовать readResolve()
для восстановления после перемещения/переименования класса? Если нет, объясните, почему.