void reset 08-protected Object replaceObject(Object obj) void useProtocolVersion(int version) 描述 所述java.io.ObjectOutputStream.reset()方法将忽略任何对象的状态已写入流。状态重置为与新的ObjectOutputStream相同。流中的当前点标记为重置,因此相应的ObjectInputStream将在同一点重置。先前写入流的对象将不会被称为已在流中。它们将再次写入流中。 声明 以下是java.io.ObjectOutputStream.reset()方法的声明。 public void reset() 参数 obj - 要替换的对象。 返回值 此方法不返回值。 异常 IOException - 如果在序列化对象时调用reset()。 实例 以下示例显示了java.io.ObjectOutputStream.reset()方法的用法。 package com.tutorialspoint; import java.io.*; public class ObjectOutputStreamDemo { public static void main(String[] args) { Object s = "Hello World!"; Object s2 = "Bye World!"; try { // create a new file with an ObjectOutputStream FileOutputStream out = new FileOutputStream("test.txt"); ObjectOutputStream oout = new ObjectOutputStream(out); // write something in the file oout.writeObject(s); // reset the stream and rewrite what is already written oout.reset(); // write something again oout.writeObject(s2); // close the stream oout.close(); // create an ObjectInputStream for the file we created before ObjectInputStream ois = new ObjectInputStream(new FileInputStream("test.txt")); // read and print a string System.out.println("" + (String) ois.readObject()); System.out.println("" + (String) ois.readObject()); } catch (Exception ex) { ex.printStackTrace(); } } } 让我们编译并运行上面的程序,这将产生以下结果 Hello World! Bye World! 08-protected Object replaceObject(Object obj) void useProtocolVersion(int version)