<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
    主站蜘蛛池模板: 国产精品无码亚洲精品2021| 亚洲激情在线视频| 亚洲最大中文字幕无码网站 | 亚洲阿v天堂在线2017免费| 免费国内精品久久久久影院| MM1313亚洲精品无码久久| 女人18毛片特级一级免费视频| 国产v亚洲v天堂a无| 久久精品女人天堂AV免费观看| 亚洲日韩国产一区二区三区在线| 夜夜爽免费888视频| 精品国产日韩亚洲一区在线| 亚洲av再在线观看| 亚洲高清免费视频| 亚洲日本va中文字幕久久| 男人进去女人爽免费视频国产| 久久精品国产亚洲AV香蕉| 亚洲网站在线免费观看| 亚洲私人无码综合久久网| 国产免费直播在线观看视频| 国产精品玖玖美女张开腿让男人桶爽免费看| 国产成人精品日本亚洲专区| 永久免费A∨片在线观看| 亚洲字幕在线观看| 国产乱子伦片免费观看中字| 国产精品永久免费视频| 久久亚洲AV午夜福利精品一区| 国产成人免费午夜在线观看| 亚洲日韩精品无码专区加勒比☆| 免费一看一级毛片| 久久久久成人片免费观看蜜芽| 亚洲最大的黄色网| 亚洲?V乱码久久精品蜜桃| 免费在线看污视频| 亚洲欧洲av综合色无码| 亚洲一区二区三区在线观看精品中文 | 成人免费777777被爆出| 精品亚洲A∨无码一区二区三区| 免费看大黄高清网站视频在线| 国产精品综合专区中文字幕免费播放 | 国产免费啪嗒啪嗒视频看看|