黑马程序员技术交流社区
标题:
序列化和反序列化的问题
[打印本页]
作者:
李易烜
时间:
2013-3-12 16:20
标题:
序列化和反序列化的问题
本帖最后由 李易烜 于 2013-3-12 22:52 编辑
序列化的作用?怎么做才最好?
反序列化的作用?
最好可以举例。
作者:
刘海浩
时间:
2013-3-12 22:14
对象流可以将Java 对象转换成二进制写入磁盘,这个过程通常叫做序列化,并且还可以从磁盘读出完整的Java 对象,而这个过程叫做反序列化.序列化是为了解决在对对象流进行读写操作时所引发的问题,最主要的用处就是在传递,和保存对象(object)的时候,保证对象的完整性和可传递性。
import java.io.Serializable;
public class User implements Serializable
{
String name;
User(String name){
this.name = name;
}
public String toString(){
return "User[name="+name+"]";
}
}
复制代码
import java.io.*;
public class ObjectOutputStreamTest01
{
public static void main(String[] args) throws Exception{
//1.创建java对象
User u1 = new User("刘德华");
//2.创建输出流(序列化流) (JVM中的java对象状态保存到硬盘中.)
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("temp06"));
//3.写
oos.writeObject(u1);
//刷新
oos.flush();
//关闭
oos.close();
}
}
复制代码
import java.io.*;
public class ObjectInputStreamTest01
{
public static void main(String[] args) throws Exception{
//1.创建反序列化流
ObjectInputStream ois = new ObjectInputStream(new FileInputStream("temp06"));
//2.反序列化
Object o = ois.readObject();
System.out.println(o); //User[name=刘德华]
//关闭
ois.close();
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2