Kan twee klasse dieselfde serialVersionUID hê?
Kan twee klasse dieselfde serialVersionUID hê?

Video: Kan twee klasse dieselfde serialVersionUID hê?

Video: Kan twee klasse dieselfde serialVersionUID hê?
Video: Как включить меню помощника в Samsung Galaxy A30 2024, November
Anonim

Ja, dit is moontlik dat twee anders klasse kan hê die dieselfde serialVersionUID waarde. Maar verkies om 'n unieke een vir elkeen te gebruik klas . Gebruik ook 8 tot 10 syfers langer een eerder as net 1 as waarde.

Gevolglik, wat is 'n serialVersionUID?

Eenvoudig gestel, die serialVersionUID is 'n unieke identifiseerder vir serialiseerbare klasse. Dit word gebruik tydens die deserialisering van 'n voorwerp, om te verseker dat 'n gelaaide klas versoenbaar is met die geserialiseerde voorwerp.

Net so, wat is die gebruik van serialVersionUID 1l? Die serialVersionUID is 'n universele weergawe-identifiseerder vir 'n serialiseerbare klas. Deserialisering gebruike hierdie nommer om te verseker dat 'n gelaaide klas presies ooreenstem met 'n geserialiseerde voorwerp. As geen passing gevind word nie, word 'n InvalidClassException gegooi.

Net so word gevra, is serialVersionUID nodig?

die verstek serialVersionUID berekening is hoogs sensitief vir klasbesonderhede wat kan wissel na gelang van samestellerimplementerings, en kan lei dus tot onverwagte InvalidClassException s tydens deserialisering. Daarom moet jy verklaar serialVersionUID want dit gee ons meer beheer.

Wat is die rol van serialVersionUID in die serialiseringsproses?

Tydens serialisering , java runtime assosieer 'n weergawenommer met elkeen serialiseerbaar klas. Hierdie nommer het gebel serialVersionUID , wat tydens deserialisering gebruik word om te verifieer dat die sender en ontvanger van 'n geserialiseer objek het klasse gelaai vir daardie objek wat versoenbaar is met betrekking tot serialisering.

Aanbeveel: