<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
    主站蜘蛛池模板: 免费黄网站在线观看| 无码中文字幕av免费放| 亚洲成A∨人片在线观看无码| 97在线线免费观看视频在线观看| MM1313亚洲国产精品| 亚洲AV成人精品网站在线播放| 青青久在线视频免费观看| 免费一级毛片在线播放放视频| 亚洲gv白嫩小受在线观看| 成年午夜视频免费观看视频| fc2成年免费共享视频网站| 亚洲午夜国产精品无卡| 国产精品亚洲w码日韩中文| 91情侣在线精品国产免费| 国产特黄特色的大片观看免费视频 | 亚洲AV无码久久久久网站蜜桃| 亚洲AV无码不卡在线观看下载| 精品一区二区三区无码免费视频| 亚洲成av人在线观看网站| 中文字幕亚洲综合久久| 亚洲视频一区二区| 男人的好看免费观看在线视频| 99热在线日韩精品免费| 在线视频亚洲一区| 亚洲av永久无码精品三区在线4| 亚洲人成无码久久电影网站| 成人au免费视频影院| 日韩精品极品视频在线观看免费| 无遮挡呻吟娇喘视频免费播放| 亚洲一区二区三区91| 亚洲好看的理论片电影| 亚洲色偷偷狠狠综合网| 国产在线a不卡免费视频| 永久免费av无码不卡在线观看| 一区二区三区在线免费看| 精品无码一级毛片免费视频观看 | 亚洲色自偷自拍另类小说| 国产视频精品免费| 成年女人免费视频播放体验区| 中文字幕成人免费视频| 鲁丝片一区二区三区免费 |