v 序列化概述:
- 序列化是将对象的状态存储到特定的存储介质中的过程.也就是把对象的状态转换为传输格式的过程!
- 在序列化过程中,会将对象的共有成员,私有成员,(包扣类名).转换为字节流,然后再把字节流写入数据流,存储到存储介中;
- 存储介质通常指文件
- 使用序列化的意义在于将Java对象序列化后,可以将其转换为字节序列(可以保存在硬盘上),同时这些序列化后的对象保存的是二进制状态.(实现了平台无关性)
Java中,只有实现了 java.io.Serializable 接口类的对象才能被序列化!
--------------------------------------------------------------------
v 序列化
序列化机制可以将,实现序列化的 java 对象转换为字节序列,这个过程需要借助 IO 流来实现!
序列化的步骤很简单,大概可分2大步:
(1)创建一个对象输出流 (ObjectOutputStream) , 它可以包装一个其他类型的输出流,如 FileOutputStream .
ObjcetOutputStream oos = new ObjcetOutputStream (new FileOutputStream("E:/shu.txt"))
创建了一个对象输出流,包装了一个文件输出流;
(2)通过对象输出流的 writeObjcet() 方法写对象,也就是把对象序列化并输出
步骤如:
[1]创建一个类,实现 Serializable 接口
[2]引入相关类
[3]创建对象输出流
[4]调用 writerObjcet() 方法将对象写入文件
[5]关闭对象输出流
--------------------------------------------------------------------
v 反序列化
反序列化是从特定存储介质中将数据重新,构建对象的过程。通过反序列化,可以将存储在文件上的对象信息读取出来,然后重新构建为对象
反序列化的步骤大致为2步:
(1)创建一个对象输入流(ObjectInputStream),它可以包装一个其他类型的输入流,如 FileInputStream
(2)通过对象输入流的 readObject() 方法读取对象。
该方法返回一个object 类型的对象,如果程序知道该java对象的类型,则可以将该对象强制转换成真实的类型;
序列化
猜你喜欢
转载自1727204629.iteye.com/blog/2405943
今日推荐
周排行