Mogu li dvije klase imati isti serialVersionUID?
Mogu li dvije klase imati isti serialVersionUID?

Video: Mogu li dvije klase imati isti serialVersionUID?

Video: Mogu li dvije klase imati isti serialVersionUID?
Video: Тима Белорусских - Витаминка (Премьера официального клипа) 2024, Studeni
Anonim

Da, moguće je da dva različit razreda mogu imati the isti serialVersionUID vrijednost. Ali radije koristite jedinstvenu za svaku razreda . Također koristite 8 do 10 znamenki dužu, a ne samo 1 kao vrijednost.

Prema tome, što je serialVersionUID?

Jednostavno rečeno, serialVersionUID je jedinstveni identifikator za klase koje se mogu serijalizirati. Ovo se koristi tijekom deserializacije objekta, kako bi se osiguralo da je učitana klasa kompatibilna sa serijaliziranim objektom.

Isto tako, čemu služi serialVersionUID 1l? The serialVersionUID je univerzalni identifikator verzije za klasu serializable. Deserializacija koristi ovaj broj kako bi se osiguralo da učitana klasa točno odgovara serijaliziranom objektu. Ako nije pronađeno podudaranje, izbacuje se iznimka InvalidClassException.

Slično, postavlja se pitanje je li potreban serialVersionUID?

zadano serialVersionUID računanje je vrlo osjetljivo na detalje klase koji mogu varirati ovisno o implementaciji prevoditelja, i limenka tako rezultirati neočekivanim InvalidClassException s tijekom deserializacije. Stoga se morate izjasniti serialVersionUID jer nam daje veću kontrolu.

Koja je uloga serialVersionUID u procesu serijalizacije?

Tijekom serijalizacija , Java runtime svakom pridružuje broj verzije serializable razreda. Ovaj broj je zvao serialVersionUID , koji se koristi tijekom deserijalizacije za provjeru da li su pošiljatelj i primatelj a serijalizirano objekt ima učitane klase za taj objekt koje su kompatibilne s obzirom na serijalizacija.

Preporučeni: