为何加入:private static final long serialVersionUID
来源:互联网 发布:淘宝图片数据包 编辑:程序博客网 时间:2024/06/10 16:50
原文地址:http://lhp--2006.iteye.com/blog/623373
1,serialVersionUID 用来表明类的不同版本间的兼容性。如果你修改了此类, 要修改此值。否则以前用老版本的类序列化的类恢复时会出错。为了在反序列化时,确保类版本的兼容性,最好在每个要序列化的类中加入private static final long serialVersionUID这个属性,具体数值自己定义。
2,控制串行化对象文件版本的,实现了serializable接口的类都应该写这个东西.在警告上点左键就可以自动添加。当然也可以去掉警告。设置:Window--> Preferences--> Java,将serializable class without serialVersionUID的设置由warning改为Ignore。然后Eclipse会重新编译程序,那些警告信息也就消失了。
序列化的几个高级应用
1 虚拟机是否允许反序列化,不仅取决于类路径和功能代码是否一致,一个非常重要的一点是两个类的序列化 ID 是否一致(就是 private static final long serialVersionUID = 1L)
2 序列化保存的是对象的状态,静态变量属于类的状态,序列化并不保存静态变量
3,Transient 关键字的作用是控制变量的序列化,在变量声明前加上该关键字,可以阻止该变量被序列化到文件中,在被反序列化后,transient 变量的值被设为初始值,如 int 型的是 0,对象型的是 null
4,Java 序列化机制为了节省磁盘空间,具有特定的存储规则,当写入文件的为同一对象时,并不会再将对象的内容进行存储,而只是再次存储一份引用
0 0
- 为何加入:private static final long serialVersionUID
- 为何加入:private static final long serialVersionUID
- private static final long serialVersionUID
- private static final long serialVersionUID
- private static final long serialVersionUID
- private static final long serialversionuid 作用
- private static final long serialVersionUID = ???
- private static final long serialversionuid 作用
- private static final long serialVersionUID的作用
- private static final long serialVersionUID的作用
- private static final long serialVersionUID的作用
- private static final long serialVersionUID = 1L;
- private static final long serialVersionUID的含义,作用
- private static final long serialVersionUID = 1L;
- private static final long serialVersionUID = 1L;
- private static final long serialVersionUID = ??? 的作用
- private static final long serialVersionUID = 1L 的作用
- private static final long serialVersionUID = 1L;
- 带最小值操作的栈
- 【bzoj4143】[AMPPZ2014]The Lawyer
- Java三星题之剪刀石头布(三局两胜)
- 开发中使用过的设计模式
- 设计 4 个线程, 其中两个线程每次对 j 增加 1 , 另外两个线程对 j 每次减少 1 。 写出程序
- 为何加入:private static final long serialVersionUID
- FZU 2198 快来快来数一数(矩阵快速幂)
- 【BZOJ1630】【Usaco2008 Nov】【Time Management 时间管理】【贪心】
- 定时器+反射变换 --->模拟一个音乐播放器的音乐专辑旋转
- 【Python】Learn Python the hard way, ex0 学习使用Terminal
- Linux join命令
- 【NDK开发】JNI与NDK关系
- Android Adapter以及getView()方法的理解
- 剑指offer:孩子们的游戏(圆圈中最后剩下的数)