Poden dues classes tenir el mateix serialVersionUID?
Poden dues classes tenir el mateix serialVersionUID?

Vídeo: Poden dues classes tenir el mateix serialVersionUID?

Vídeo: Poden dues classes tenir el mateix serialVersionUID?
Vídeo: Closed for 40 years ~ Abandoned Portuguese Noble Palace with all its belongings 2024, De novembre
Anonim

Sí, és possible que dos diferents les classes poden tenir el mateix serialVersionUID valor. Però preferiu utilitzar-ne un únic per a cadascun classe . També utilitzeu de 8 a 10 dígits més llarg en lloc de només 1 com a valor.

En conseqüència, què és un serialVersionUID?

En poques paraules, el serialVersionUID és un identificador únic per a les classes serializables. S'utilitza durant la deserialització d'un objecte, per assegurar-se que una classe carregada és compatible amb l'objecte serialitzat.

De la mateixa manera, per a què serveix serialVersionUID 1l? El serialVersionUID és un identificador de versió universal per a una classe Serializable. Deserialització usos aquest número per assegurar-se que una classe carregada correspon exactament a un objecte serialitzat. Si no es troba cap coincidència, es llança una InvalidClassException.

De la mateixa manera, es pregunta, es necessita serialVersionUID?

el per defecte serialVersionUID el càlcul és molt sensible als detalls de classe que poden variar segons les implementacions del compilador, i llauna per tant, es produeixen InvalidClassException inesperades durant la deserialització. Per tant, cal declarar serialVersionUID perquè ens dóna més control.

Quin és el paper de serialVersionUID en el procés de serialització?

Durant serialització , Java Runtime associa un número de versió amb cadascun serializable classe. Aquest número trucat serialVersionUID , que s'utilitza durant la deserialització per verificar que l'emissor i el receptor d'a serialitzat L'objecte ha carregat classes per a aquest objecte que són compatibles amb serialització.

Recomanat: