其他分享
首页 > 其他分享> > 对象串行化

对象串行化

作者:互联网

对象串行化

  ObjectInputStream类

  readObject()

  ObjectOutpurStream

  writeObject()

  Serializable接口

对象通过写出描述自己状态的数值来记录自己,这个过程叫对象的串行化(Serialization一连续)。
串行化的主要任务是写出对象实例变量的数值

class Student implements Serializable {
    private String name;
    private int age;
    private int grade;

    public Student(String name, int age, int grade) {
        this.name = name;
        this.age = age;
        this.grade = grade;
    }

    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", grade=" + grade +
                '}';
    }
    public static class Main {


        public static void main(String[] args) throws Exception {
            try {
                Student s1 = new Student( "Jo", 12, 5);
                System.out.println(s1);
                ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream( "obj.dat"));
                out. writeObject(s1);
                out.close();
                ObjectInputStream in = new ObjectInputStream(new FileInputStream("obj.dat"));
                Student s2 = (Student)in.readObject();
                System.out.println(s2);
                in.close();
                System.out.println(s1==s2);
            }catch (IOException e){
                e.printStackTrace();
            }catch (ClassNotFoundException e) {e.printStackTrace() ;
            }

        }
    }
}

 

标签:name,对象,age,grade,Student,new,串行化,out
来源: https://www.cnblogs.com/yuzong/p/16406684.html