概念:

对象的寿命随着生成该对象的程序的终止而终止。
对象的持续性:把对象的状态记录下来便于以后再生的能力。
对象串行化:将对象状态(实例变量)保存下来。

对象串行化的作用:

(1)把内存中对象状态(实例变量)保存到文件中;
(2)用套接字在网络上传送对象的时候;
(3)通过RMI传输对象时;
(4)将对象中需要持久保存的信息写入到数据库。
通过对象输出流的writeObject()和对象输入流的readObject()方法实现了对象的串行化(Serialized)和反串行化(Deserialized)

  1. 程序1:将系统对象写入文件
  2. import java.io.*;
  3. import java.util.*;
  4. public class writedate {
  5. public static void main(String args[]) {
  6. try {
  7. ObjectOutputStream out=new ObjectOutputStream(new FileOutputStream("storedate.dat"));
  8. out.writeObject(new Date());
  9. out.writeObject("hello world");
  10. System.out.println("写入完毕");
  11. } catch (IOException e) {}
  12. }
  13. }
  14. 程序2:读取文件中的对象并显示出来
  15. import java.io.*;
  16. import java.util.*;
  17. public class readdate {
  18. public static void main(String args[]) {
  19. try{
  20. ObjectInputStream in=new ObjectInputStream(new FileInputStream("storedate.dat"));
  21. Date current=(Date)in.readObject();
  22. System.out.println("日期:"+current);
  23. String str=(String)in.readObject();
  24. System.out.println("字符串:"+str);
  25. } catch (IOException e) { }
  26. catch (ClassNotFoundException e) { }
  27. }
  28. }