1.定义对象
package com; /** * * @author yf * */ public class Employee implements java.io.Serializable { public String name; public String address; public transient int SSN; public int number; public void mailCheck() { System.out.println("Mailing a check to " + name + " " + address); } }
2.将对象写入内存
package com; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectOutputStream; public class SerializeDemo { public static void main(String[] args) { //将要写入的对象 Employee e=new Employee(); e.name="tom"; e.address="BeiJing"; e.number=2; e.SSN=2; //文件输出流 FileOutputStream out=null; try { out=new FileOutputStream("/tmp.ser"); //对象输出流 ObjectOutputStream oout=new ObjectOutputStream(out); oout.writeObject(e); out.close(); oout.close(); } catch (FileNotFoundException e1) { e1.printStackTrace(); } catch (IOException e1) { e1.printStackTrace(); } } }
3.将对象输出内存
package com; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.ObjectInputStream; public class Test01 { public static void main(String[] args) { //文件输入流 FileInputStream in=null; //反序列对象 Employee emp=null; try { in=new FileInputStream("/tmp.ser"); //对象流 ObjectInputStream obj=new ObjectInputStream(in); //获取对象 emp=(Employee) obj.readObject(); System.out.println(emp.address); System.out.println(emp.name); System.out.println(emp.number); System.out.println(emp.SSN); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }