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

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

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

    posts - 72, comments - 66, trackbacks - 0, articles - 0
    當(dāng)一個類實現(xiàn)了序列化接口,有時會遇到 java.io.InvalidClassException 異常出現(xiàn):
    java.io.InvalidClassException: com.test.Test; local class incompatible: stream classdesc serialVersionUID = 7981560250804078637, local class serialVersionUID = -8334405535174160822
    這是序列化兼容性所致;
    java通過一個名為UID(stream unique identifier)來控制,這個UID是隱式的,它通過類名,方法名等諸多因素經(jīng)過計算而得,理論上是一一映射的關(guān)系,也就是唯一的。如果UID不一 樣的話,就無法實現(xiàn)反序列化了,并且將會得到InvalidClassException。
    當(dāng)要人為的產(chǎn)生一個新的版本(實現(xiàn)并沒有改動),而拋棄以前的版本的話,可以通過顯式的聲名UID來實現(xiàn):
    private static final long serialVersionUID=????;//(你可以編造一個UID,但不能有重復(fù))

    對于上例我們可以在com.test.Test類中加入 :
    private static final long serialVersionUID=7981560250804078637l;
    這樣就解決了新老版本的兼容性問題。
    當(dāng)然,對于序列化還有很多問題,慢慢研究吧。

    Feedback

    # re: 有關(guān)序列化的問題 java.io.InvalidClassException  回復(fù)  更多評論   

    2009-01-13 12:35 by 隔葉黃鶯
    如果你能掌控類之間的差異,就讓

    private static final long serialVersionUID=-1

    就行的,省得讓 Java 自己生成,或者用命令 serialver.exe 來生成 serialVersionUID

    # re: 有關(guān)序列化的問題 java.io.InvalidClassException  回復(fù)  更多評論   

    2012-03-18 19:48 by kikyo
    萬分感謝!!?。。。。。?!

    # re: 有關(guān)序列化的問題 java.io.InvalidClassException  回復(fù)  更多評論   

    2015-10-15 17:48 by caoyang
    NB
    主站蜘蛛池模板: 日本免费观看网站| 国产精品成人观看视频免费| 女性自慰aⅴ片高清免费| 亚洲国产精品成人久久久| 日本不卡免费新一区二区三区| 国产亚洲成人在线播放va| 一级看片免费视频囗交| mm1313亚洲精品国产| 一个人看www免费高清字幕| 亚洲第一福利网站在线观看| 免费看美女午夜大片| 亚洲乱码中文字幕手机在线| 精品无码国产污污污免费网站国产| 亚洲精品国产成人影院| 一级做α爱过程免费视频| 亚洲精品成人无限看| 国内精品免费在线观看| 久久久久亚洲av无码专区喷水| 91人成网站色www免费下载| 亚洲综合无码一区二区三区| 欧洲乱码伦视频免费| 亚洲色丰满少妇高潮18p| 免费一级毛片在级播放| a在线视频免费观看| 久久精品国产亚洲av麻豆色欲| 亚洲视频免费在线播放| 亚洲色丰满少妇高潮18p| 亚洲欧洲精品成人久久曰影片| 成人免费av一区二区三区| 亚洲国产天堂久久综合网站| 很黄很色很刺激的视频免费| 精品亚洲av无码一区二区柚蜜| 亚洲偷自拍拍综合网| 永久在线免费观看| 亚洲sm另类一区二区三区| 国产av无码专区亚洲av果冻传媒| 亚洲免费在线播放| 亚洲a∨国产av综合av下载| 亚洲午夜福利AV一区二区无码| 亚洲高清视频免费| 黄色毛片视频免费|