流方面:
private FileOutputStream writer; writer = new FileOoutputStream(fileName);
使用BufferedOutputStream 对写入FileOutputStream的数据进行缓存
//将writer的类型由FileOutputStream 变更为BufferedOutputStream //private FileOutputStream writer; private BufferedOutputStream writer;//Java6中默认的缓存大小为8192
初始化
//初始化BufferedOutputStream //writer = new FileOutputStream(fileName); writer = new BufferedOutputStream(new FileOutputStream());
但是这样改动仍然不好 writer的类型被限制为了BufferedOutputStream 继续
private OutputStream writer; //BufferedOutputStream write = new BufferedOutputStream write = new BufferedOutputStream()
这样修改后 此时的write 能接受的类型不仅是 BufferedOutputStream 还可以是 ByteArrayOutputStream、DataOutputStream、FileOutputStream等等。
提高了write 的灵活性。
同时,在关闭流时
write.flush();
write.close();
如果需要关闭流 不需要在之前flush 因为close方法底层中默认先会调用flush
如果写上flush 反而执行了两次flush 降低了性能