Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。以下是小编为大家搜索整理的jav下面是小编为大家整理的2023年度java对象序列化与对象反序列化,供大家参考。
Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。以下是小编为大家搜索整理的java反序列化对象的技巧,欢迎阅读!更多精彩内容请及时关注我们考试网!
下面的DeserializeDemo程序实例了反序列化,/tmp/employee.ser存储了Employee对象。
import java.io.*;
public class DeserializeDemo
public static void mainString [] args
Employee e = null;
try
FileInputStream fileIn = new FileInputStream"/tmp/employee.ser";
ObjectInputStream in = new ObjectInputStreamfileIn;
e = Employee in.readObject;
in.close;
fileIn.close;
catchIOException i
i.printStackTrace;
return;
catchClassNotFoundException 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。
推荐访问:对象 序列 化与 java对象序列化与对象反序列化 java对象序列化与对象反序列化 java对象序列化与对象反序列化的区别 java对象序列化与对象反序列化的关系 java对象的序列化和反序列化
【2023年度java对象序列化与对象反序列化】相关文章: