love fish大鵬一曰同風(fēng)起,扶搖直上九萬里

          常用鏈接

          統(tǒng)計(jì)

          積分與排名

          friends

          link

          最新評論

          serialVersionUID

          serialVersionUID 用來表明類的不同版本間的兼容性。如果你修改了此類, 要修改此值。否則以前用老版本的類序列化的類恢復(fù)時(shí)會(huì)出錯(cuò)。
            
            在JDK中,可以利用JDK的bin目錄下的serialver.exe工具產(chǎn)生這個(gè)serialVersionUID,對于Test.class,執(zhí)行命令:serialver Test。

            為了在反序列化時(shí),確保類版本的兼容性,最好在每個(gè)要序列化的類中加入private static final long serialVersionUID這個(gè)屬性,具體數(shù)值自己定義。這樣,即使某個(gè)類在與之對應(yīng)的對象已經(jīng)序列化出去后做了修改,該對象依然可以被正確反序列化。否則,如果不顯式定義該屬性,這個(gè)屬性值將由JVM根據(jù)類的相關(guān)信息計(jì)算,而修改后的類的計(jì)算結(jié)果與修改前的類的計(jì)算結(jié)果往往不同,從而造成對象的反序列化因?yàn)轭惏姹静患嫒荻 ?/p>

            不顯式定義這個(gè)屬性值的另一個(gè)壞處是,不利于程序在不同的JVM之間的移植。因?yàn)椴煌木幾g器實(shí)現(xiàn)該屬性值的計(jì)算策略可能不同,從而造成雖然類沒有改變,但是因?yàn)镴VM不同,出現(xiàn)因類版本不兼容而無法正確反序列化的現(xiàn)象出現(xiàn)。

          posted on 2007-05-16 14:21 liaojiyong 閱讀(413) 評論(0)  編輯  收藏 所屬分類: Java

          主站蜘蛛池模板: 广东省| 柯坪县| 沙雅县| 开化县| 夹江县| 云梦县| 新和县| 鄂伦春自治旗| 沭阳县| 商城县| 砚山县| 南郑县| 库尔勒市| 方城县| 闽清县| 来凤县| 湖南省| 射阳县| 滦南县| 尖扎县| 青神县| 三门峡市| 吉林市| 金川县| 安徽省| 敦煌市| 灵川县| 陈巴尔虎旗| 紫云| 柳州市| 延吉市| 五指山市| 林甸县| 紫阳县| 黄骅市| 嘉荫县| 平舆县| 宝丰县| 麻江县| 安多县| 潞西市|