Изменение сериализованного класса

108
12 января 2022, 23:50

Подскажите пожалуйста, имеется сериализации класс, в нем необходимо переопределить метод например toString, после переопределения ранее сериализованные объектов класса не десериализуются, как можно обойти эту проблему?

Answer 1

Определите следующее статическое поле serialVersionUID с номером версии.

private static final long serialVersionUID = 1L;

Пока ваши изменения в классе совместимы этот номер можно не менять. Без этого поля оно генерируется автоматически, то есть любые изменения класса меняют вычисленное значение этого поля, поэтому у вас и возникают проблемы во время десериализации.

READ ALSO
Вернуть поток в начальное положение

Вернуть поток в начальное положение

Реализован конвейер, состоящий из Manager, Reader, Executor1, Executor2, Writer, наследованные от Runnable (Executor1 дергает Reader, получает от него данные, обрабатывает,...

205
Как вывести все элементы двумерного массива с помощью foreach?

Как вывести все элементы двумерного массива с помощью foreach?

Не могу понять, как вывести двумерный массив с помощью foreach на языке java

159
Построить круг из точек

Построить круг из точек

Всем привет! Нужно построить круг из точек( заполненный), каждая точка будет иметь свое значение и из-за этого свой оттенок цвета, в результате...

180