package Nov2016; import java.io.Serializable; // V1.0版
public class Ques1114 implements Serializable{ private static final long serialVersionUID = 1L; public final int num; public Ques1114(){
num = 123;
}
}
// 序列化到磁盘
public class TestSerialize{
public static void main(String[] args) {
SerializeUtils.writeObject(new Ques1114());
}
}
// V2.0版 修改num值(serialVersionUID保持不变)
public class Ques1114 implements Serializable{ private static final long serialVersionUID = 1L; public final int num; public Ques1114(){
num = 321;
}
}
// 反序列化
public class TestDeserialize{
public static void main(String[] args) {
Ques1114 ques1114 = (Ques1114)SerializeUtils.readObject();
System.out.println(ques1114.num); // 输出值
}
}
今日问题:
通过20161111问题知道反序列化时final属性会重新计算值,那这里请问“输出”处输出结果是什么?(点击以下“【Java每日一题】20161114”查看20161111问题解析)
题目原发布于公众号、简书:【Java每日一题】20161114,【Java每日一题】20161114