Описание тега serialversionuid
NoneSerialVersionUID - это необязательный атрибут классов Java, указывающий версию стандартного формата сериализации / десериализации. Используется для обнаружения несовместимости сериализованного объекта с процессом / классом десериализации.
Документировано в java.io.Serializable:
Среда выполнения сериализации связывает с каждым сериализуемым классом номер версии, называемый serialVersionUID, который используется во время десериализации для проверки того, что отправитель и получатель сериализованного объекта загрузили классы для этого объекта, совместимые с сериализацией. Если получатель загрузил класс для объекта, у которого другойserialVersionUID
чем у соответствующего класса отправителя, то десериализация приведет к InvalidClassException
. Сериализуемый класс может явно объявить свой собственный serialVersionUID, объявив поле с именем"serialVersionUID"
это должно быть static, final и типа long:
ANY-ACCESS-MODIFIER static final long serialVersionUID = 42L;