有如下代码段,请填写完整所缺的部分。
import java.util.Vector;
import java.io.*;
public class Test_Ser
public static void main(String[] args) throws Exception
Vector v = new Vector(); //生成一个向量表
v.add(new String("Test String")); //增加一个字符串对象
FileOutputStream ostream = new FileOutputStream("d:\\test.ser");
//构造文件输出流
ObiectOutputStream p = 【9】 ; //绑定
p.writeObject(v); //输出继承了串行化接口的类
p.flush();
p.close();
ostream.close();
v.clear(); //清空向量表,此时的v.size()应该为0
FileInputStream istream=new FileInputStream("d:\\test.set");
//构造文件输入流
ObjectInputStream pr = new ObjectInputStream(istream); //绑定
v = (Vector)pr.readObject();0//读入串行化的类
istream.close();
System.out.println("v.size()="+v.size()); //验证读入类的正确性
System.out.println("v.get(0)="+(String)v.get(0));
参考答案:new ObjectOutputStream(ostream)
解析: 本题是考查对Vector类的使用。Vector类是继承了 Serializable接口的,这个接口就是实现串行化的接口。我们需要串行化的类其实只要简单地继承一下Serializable接口就可以进行保存传输工作。对象读出或者写入流的主要类有两个:ObjectOutputStream与ObjectInputStream。
① ObjectOutputStream提供将对象写入输出流的writeObject方法。
② ObjectInputStream提供从输入流中读出对象的readObject方法。
注意:使用这些方法的对象必须被串行化,这非常重要。也就是说,这些类必须实现 Serializable接口。