Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Serializable

Boa noite,

Pelo que eu entendi, para o Java não jogar a InvalidClassException, devemos utilizar um um generated serialVersionID certo? Que é gerado pelo próprio Java.

Porém no vídeo o Nico fala que caso façamos alguma alteração incompatível, devemos alterar a versão desse serialVersion, neste caso devemos usar a default serialVersionID? Mas deste modo ocorreria uma InvalidClassException não?

2 respostas
solução!

Olá Thales, tudo bem com você?

Ficou um pouco confuso a sua dúvida, pois quando fazemos um alteração incompatível queremos que dê um InvalidClassExcpetion tanto com o número randômico gerado, quanto pelo default :)

Iremos utilizar o generated serial version quando já gravamos algum objeto ( sem ter definido antes um serialID) e queremos ler novamente, dessa forma caso a gente utilize o default começando em 1 teremos realmente uma quebra de compatibilidade com o arquivo salvo, mas dessa forma caso haja uma alteração incompatível podemos acrescentar em 1 a versão desse número aleatório, mas o natural é que tenha a exceção dado que houve uma mudança que não faz mais sentido!

Mas a tendência normalmente é utilizarmos sempre o default começando em 1 e ir acrescentando de 1 em 1 :)

Abraços e Bons Estudos!

Entendi, muito obrigado Geovani