Portál AbcLinuxu, 26. dubna 2024 08:16


Dotaz: Java serialVersionUID

22.7.2009 15:02 FcBk
Java serialVersionUID
Přečteno: 1831×
Odpovědět | Admin

Dobry den, jaky je duvod psat do nekterych Java trid tento radek?

public static final long serialVersionUID = 1L;
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

22.7.2009 15:42 moira | skóre: 30 | blog: nesmysly
Rozbalit Rozbalit vše Re: Java serialVersionUID
Odpovědět | | Sbalit | Link | Blokovat | Admin
Serialization API
Překladač ti nikdy neřekne: "budeme kamarádi"
22.7.2009 16:11 dementni.lojzik | skóre: 19 | blog: ze zivota na vsi
Rozbalit Rozbalit vše Re: Java serialVersionUID
ja bych nerekl, ze serializace je duvod:-) A jinak psat serialVersionUID = 1L opravdu neprijde jako dobry napad.
default avatar 22.7.2009 21:28 default | skóre: 22 | Madrid
Rozbalit Rozbalit vše Re: Java serialVersionUID
A jinak psat serialVersionUID = 1L opravdu neprijde jako dobry napad.

A proč? Jen tak na okraj. :-D

23.7.2009 09:12 rastos | skóre: 62 | blog: rastos
Rozbalit Rozbalit vše Re: Java serialVersionUID
default avatar 23.7.2009 10:07 default | skóre: 22 | Madrid
Rozbalit Rozbalit vše Re: Java serialVersionUID

:-D

23.7.2009 14:59 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Java serialVersionUID
On je podivný celý ten komentář. Nevím o žádném jiném očekávaném užití serialVersionUID, než je serializace. A nastavení verze na jedničku také není problém, pokud se při nekompatibilní (z hlediska serializace) změně třídy verze změní.
23.7.2009 17:20 dementni.lojzik | skóre: 19 | blog: ze zivota na vsi
Rozbalit Rozbalit vše Re: Java serialVersionUID
Ja taky nevim o zadnym dalsim pouziti:-) Bylo to jen takove malicherne rypnuti, ze duvodem psani neni serializace, ale to, ze the default serialVersionUID computation is highly sensitive to class details. Jinak mi prislo, ze tazatel by nastavoval UID uplne vsude na 1 (i u nekompatibilnich verzi dane tridy), coz by asi byl problem. V principu ale, pokud to bude pro nekompatibilni verze menit, by to asi problem byt nemel (i kdyz musim rict, ze to na me pusobi zvlastne, nastavovat to na 1, ale to je asi ciste emocni zalezitost, racionalni duvody, proc by to tak nemelo byt, ted pro to nemam).
23.7.2009 17:23 dementni.lojzik | skóre: 19 | blog: ze zivota na vsi
Rozbalit Rozbalit vše Re: Java serialVersionUID
i kdyz vlastne stejne malicherne by se mi dalo vytknout, ze ten prispevek, na ktery jsem reagoval ani netvrdi, ze duvodem je serializace... no, asi jsem byl vcera uz nejaky pretazeny :-(
23.7.2009 18:53 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Java serialVersionUID
Když začnete jedničkou a postupně to zvyšujete o jednu, dá se to číslo docela dobře chápat jako číslo verze. Když budu dělat nějaké úpravy, snadno si dokážu zapamatovat, jestli už jsem číslo verze zvýšil z 15 na 16, nebo ne. Pokud začnu vygenerovaným číslem, pro mne osobně budou verze 127423486 a 127423487 to samé, na první pohled v tom rozdíl nevidím. Takže pak zbývá jedině po každé úpravě nechat znova vygenereovat „vypočítaná“ serialVersionUID, jenže to se pak může zase měnit zbytečně. Vlastně podle toho rozlišuju, zda se má o serialVersionUID starat programátor, nebo ho mám nechat vygenerovat když je tam nějaké malé číslo (nejčastěji 1), stará se o verzi programátor, když tam je nějaká hausnumero, nechám číslo vygenerovat.
22.7.2009 16:31 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Java serialVersionUID
Odpovědět | | Sbalit | Link | Blokovat | Admin
Serialization: Stream Unique Identifiers

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.