A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 杨银川 黑马帝   /  2011-12-14 17:08  /  1924 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 杨银川 于 2011-12-14 22:50 编辑

想问一下,关于private static final long serialVersionUID = xxxL;其中的xxx在定义上有什么需要注意的,还有这句话在实际开发过程中怎么用的,用的多吗,谢谢

评分

参与人数 1技术分 +1 收起 理由
吴上储 + 1

查看全部评分

2 个回复

倒序浏览
本帖最后由 晨曦 于 2011-12-14 18:22 编辑

类型为long的变量
serialVersionUID 用来表明类的不同版本间的兼容性 简单来说,Java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的。javabean对象只要继承了Serializable接口,在序列化时都会有个唯一标识,用来区分各个版本.这个唯一的标识就是serialVersionUID属性指定的;默认情况下可以不指定,但是推荐指定; 比如用IDE:JB开发,不会有任何问题;但是如果又用IDE:Eclipse开发,则会有warning级别的提示。
记得以前不是那里看过,貌似不用管呢?{:soso_e117:}

评分

参与人数 1技术分 +1 收起 理由
吴上储 + 1

查看全部评分

回复 使用道具 举报
 一:对象序列化可以完成散布式对象。 主要应用例如:rmi要应用对象序列化运行近程主机上的服务, 就像在本地机上运行对象时一样。

  二:java对象序列化不只保留一个对象的数据, 而且递归保存对象援用的每个对象的数据。 可以将整个对象层次写入字节流中, 可以保存在文件中或在网络衔接上传递。 应用对象序列化可以进行对象的"深复制", 即复制对象自身及援用的对象自身。 序列化一个对象能够失掉整个对象序列。

  类经过完成java. io. serializable接口以启用其序列化功能。 未完成此接口的类将无法使其任何形态序列化或反序列化。 可序列化类的一切子类型自身都是可序列化的。 序列化接口没有方法或字段, 仅用于标识可序列化的语义。

  要允许不可序列化类的子类型序列化, 可以假定该子类型负责保存和还原超类型的公用(public)、受保护的(protected)和(如果可访问)包(package)字段的形态。 仅在子类型扩展的类有一个可访问的无参数构造方法来初始化该类的形态时, 才可以假定子类型有此责任。 如果不是这种情况, 则声明一个类为可序列化类是错误的。 该错误将在运行时检测到。

评分

参与人数 1技术分 +2 收起 理由
admin + 2

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马