<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    軟件是對質(zhì)量的不懈追求

    Java 中serialVersionUID的解釋

    serialVersionUID作用:
           序列化時為了保持版本的兼容性,即在版本升級時反序列化仍保持對象的唯一性。
    有兩種生成方式:
           一個是默認(rèn)的1L,比如:private static final long serialVersionUID = 1L;
           一個是根據(jù)類名、接口名、成員方法及屬性等來生成一個64位的哈希字段,比如:
           private static final   long     serialVersionUID = xxxxL;

    當(dāng)你一個類實(shí)現(xiàn)了Serializable接口,如果沒有定義serialVersionUID,Eclipse會提供這個
         提示功能告訴你去定義 。在Eclipse中點(diǎn)擊類中warning的圖標(biāo)一下,Eclipse就會
         自動給定兩種生成的方式。如果不想定義它,在Eclipse的設(shè)置中也
          可以把它關(guān)掉的,設(shè)置如下:
            Window ==> Preferences ==> Java ==> Compiler ==> Error/Warnings ==>
            Potential programming problems
            將Serializable class without serialVersionUID的warning改成ignore即可。

    如果你沒有考慮到兼容性問題時,就把它關(guān)掉,不過有這個功能是好的,只要任何類別實(shí)現(xiàn)了Serializable這個接口的話,如果沒有加入 serialVersionUID,Eclipse都會給你warning提示,這個serialVersionUID為了讓該類別 Serializable向后兼容。

    如果你的類Serialized存到硬盤上面后,可是后來你卻更改了類別的field(增加或減少或改名),當(dāng)你Deserialize時,就會出現(xiàn) Exception的,這樣就會造成不兼容性的問題。

    但當(dāng)serialVersionUID相同時,它就會將不一樣的field以type的預(yù)設(shè)值Deserialize,可避開不兼容性問題。

    posted on 2010-04-08 10:37 BlakeSu 閱讀(164) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲欧洲日本精品| 在线观看午夜亚洲一区| 亚洲伊人久久大香线蕉啊| 99在线免费观看视频| 国产黄在线观看免费观看不卡| 美女黄网站人色视频免费国产 | 亚洲精品理论电影在线观看| 人成午夜免费视频在线观看| 亚洲AV电影院在线观看| 麻豆精品不卡国产免费看| 免费无码精品黄AV电影| 亚洲性色精品一区二区在线| 午夜不卡久久精品无码免费 | 亚洲人成黄网在线观看| 无码人妻一区二区三区免费| 亚洲日本VA中文字幕久久道具| 永久中文字幕免费视频网站| 猫咪免费人成网站在线观看入口| 亚洲免费在线观看| 免费在线看污视频| 91情侣在线精品国产免费| 亚洲天然素人无码专区| 亚洲高清视频一视频二视频三| 美女巨胸喷奶水视频www免费| 亚洲一区二区在线视频| sss日本免费完整版在线观看| 亚洲色无码专区在线观看| 57pao一国产成视频永久免费| 亚洲最大天堂无码精品区| 日韩亚洲国产综合久久久| 国产在线观看免费视频软件 | 91亚洲va在线天线va天堂va国产 | 亚洲第一福利视频| 天天拍拍天天爽免费视频| 无遮挡免费一区二区三区| 亚洲狠狠久久综合一区77777| 久久精品a一国产成人免费网站| 成人精品综合免费视频| 亚洲黄色三级视频| 亚洲AⅤ视频一区二区三区| 99re在线免费视频|