Archief - [PROG]JAVA: Serializable & serialVersionUID

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

maxdevis

Legacy Member
ik begrijp niet goed waarvoor die serialVersionUID van het type long dient.
In het voorbeeld in het boek dat ik ben aan het "lezen" (Deitel & Deitel) wordt dat zelfs niet gebruikt.
Maar als ik die long niet typ dan krijg ik een warning.
Heb al zitten zoeken in het boek en de api, maar het is me nog niet duidelijk.

Waarvoor dient dat, is dat nodig en hoe werkt het?

jodeman

Legacy Member
Je moet daar niets mee doen, alles gebeurt intern bij java serializatie. Serializable is een lege interface (geen methode voor te implementeren) die gewoon gebruikt wordt om uw klasse een tag te geven om deze op te geven als serialiseerbaar. Alle objecten die dan serializable implementeren worden overgebracht naar een andere plaats. Serialiseren is een verzameling van objecten overbrengen naar een ander medium.
Wat probeer je te doen eigenlijk?

Emerxill

Legacy Member
Serializeren dient dus om uw objecten naar files weg te schrijven om ze zo bijv over het netwerk te kunnen versturen.
Maw, de state wordt opgeslagen.

Gelijk jodeman al zei, is dat een soort van flag (in de vorm van een interface) om te markeren dat deze klasse kan worden geserialiseerd.

Nadeel is, als uw class een bepaalde class extend die niet serialiable is (en gij kunt da ook niet serializable maken want ge hebt bijv geen toegang tot de source). Kan da rare dingen geven.

Die warning kunt ge btw wegwerken met een annotation (@SuppressWarnings("serial")).
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan