//写入文件
File file = new File("serial.txt");
ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(file));
out.writeObject(entity);
//写入byte数组
ObjectOutputStream out = new ObjectOutputStream(new ByteArrayOutputStream());
out.writeObject(entity);
//反序列化
//从文件读出
ObjectInputStream in = new ObjectInputStream(new FileInputStream(file));
Object entity = in.readObject();
//根据byte[]
ObjectInputStream in = new ObjectInputStream(new ByteArrayInputStream(bytes));
Object entity = in.readObject();
在发序列化过程中,不调用调用包括无参构造方法在内的所有构造器。
序列化的目的之一就是记录对象当时的状态,而构造方法有可能会对这个状态产生影响,因此反序列化时会调用native方法去处理