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

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

    Feedback

    # re: 有關序列化的問題 java.io.InvalidClassException  回復  更多評論   

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

    private static final long serialVersionUID=-1

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

    # re: 有關序列化的問題 java.io.InvalidClassException  回復  更多評論   

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

    # re: 有關序列化的問題 java.io.InvalidClassException  回復  更多評論   

    2015-10-15 17:48 by caoyang
    NB
    主站蜘蛛池模板: 美美女高清毛片视频黄的一免费| 亚洲熟妇av一区| 一级黄色毛片免费看| 亚洲无码日韩精品第一页| 免费国产va在线观看| 亚洲性久久久影院| 特级做A爰片毛片免费看无码 | 大地资源网高清在线观看免费| 亚洲AV之男人的天堂| 一级看片免费视频| 亚洲AV中文无码字幕色三| 无码精品一区二区三区免费视频| 亚洲激情中文字幕| 日韩在线免费视频| 亚洲丰满熟女一区二区哦| 亚洲 国产 图片| 成av免费大片黄在线观看| 亚洲资源在线观看| 成年免费大片黄在线观看岛国 | 免费黄网在线观看| 色一情一乱一伦一视频免费看| 国产免费131美女视频| 久草免费福利在线| 亚洲欧洲日韩国产| 免费在线观看毛片| 久9久9精品免费观看| 亚洲日本国产综合高清| 亚洲av午夜成人片精品电影| 国内精品免费在线观看 | 7777久久亚洲中文字幕| 国产a级特黄的片子视频免费| 中国人免费观看高清在线观看二区| 亚洲av鲁丝一区二区三区| 欧洲精品成人免费视频在线观看| 国产成人亚洲精品蜜芽影院| 国产精品亚洲一区二区三区在线| 久久99九九国产免费看小说| 精品亚洲成a人在线观看| 亚洲av日韩av激情亚洲| 国产免费69成人精品视频| 日本免费污片中国特一级|