全国计算机二级Java语言程序设计辅导51
求学快递网计算机等级考试专题重点推荐:2016年计算机二级考试报考时间 、2016年计算机二级考试证书领取时间、2016年计算机二级考试报考指南、2016年计算机二级考试大纲、2016年计算机二级考试政策、2016年计算机二级考试报考条件、2016年计算机二级考试科目等最新新闻资讯。
下面的DeserializeDemo程序实例了反序列化,/tmp/employee.ser存储了Employee对象。
import java.io.*;
public class DeserializeDemo
{
public static void main(String [] args)
{
Employee e = null;
try
{
FileInputStream fileIn = new FileInputStream("/tmp/employee.ser");
ObjectInputStream in = new ObjectInputStream(fileIn);
e = (Employee) in.readObject();
in.close();
fileIn.close();
}catch(IOException i)
{
i.printStackTrace();
return;
}catch(ClassNotFoundException c)
{
System.out.println("Employee class not found");
c.printStackTrace();
return;
}
System.out.println("Deserialized Employee...");
System.out.println("Name: " + e.name);
System.out.println("Address: " + e.address);
System.out.println("SSN: " + e.SSN);
System.out.println("Number: " + e.number);
}
}
以上程序编译运行结果如下所示:
Deserialized Employee...
Name: Reyan Ali
Address:Phokka Kuan, Ambehta Peer
SSN: 0
Number:101
这里要注意以下要点:
readObject() 方法中的try/catch代码块尝试捕获 ClassNotFoundException异常。对于JVM可以反序列化对象,它必须是能够找到字节码的类。如果JVM在反序列化对象的过程中找不到该类,则抛出一个 ClassNotFoundException异常。
注意,readObject()方法的返回值被转化成Employee引用。
当对象被序列化时,属性SSN的值为111222333,但是因为该属性是短暂的,该值没有被发送到输出流。所以反序列化后Employee对象的SSN属性为0。
关注求学快递网计算机等级考试专题,帮你了解最新的2016年计算机二级考试资讯服务和2016计算机二级考试成绩查询,让你轻松备考计算机等级考试!
求学快递网计算机等级考试专题的小编们根据网民搜索喜爱,第一时间公布2016年计算机二级模拟试题、2016年计算机二级考试应试技巧、计算机二级考试历年真题、2016年计算机二级考试章节复习供广大求学爱好者学习使用,欢迎继续关注求学快递网计算机等级考试专题,并给我们提供宝贵的意见!