A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张榆 中级黑马   /  2012-9-23 15:27  /  1610 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在IO流中,复制文件后,需要关闭流。

请问,关闭输入输出流有先后顺序吗~~~

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

3 个回复

倒序浏览
没有先后顺序,既然你把文件都复制完了,先关闭谁都可以!

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
输入和输出流之间没有关闭的先后顺序.
不过如果单从输入流或输出流来说,如果存在嵌套输入流或输出流,又如果你想将每个输入流或输出流都关闭掉,那么一般都是先关闭嵌套中的最里边的那一层.
不过,其实只要关闭最外面那层就可以了,不管是输入流还是输出流,作为包装的过滤流(也称为处理流,例如BufferedInputStream.),其close()方法,JDK做了优化处理,调用过滤流的close()方法,会自动将被包装的节点流(例如InputStream)关闭掉,程序员没必要自己去关闭最里面的节点流.

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
没有顺序的  涉及到缓冲技术的BufferedReader BufferedWriter 这两者直接把缓冲流一关就行了,原因就是你吧直接参与读写的都关了,就是把两个源头都关了,像往里面传的那些字节流、字符流就不用啦

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马