关于流的关闭顺序

关于流的关闭顺序

例题中流的关闭怎么不是后创建先关闭,什么情况下先创建先关闭会出错,什么情况下不会

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,一般情况下,先打开的后关闭,后打开的先关闭

例如:在如下的代码中,先创建的FileOutputStream,后创建的BufferedOutputStream。关闭时,先关闭FileOutputStream,后关闭BufferedOutputStream,运行报错,如:

http://img1.sycdn.imooc.com//climg/5f6081b809e7fc2309860676.jpg

另一种情况:看依赖关系,如果流a依赖流b,应该先关闭流a,再关闭流b。

例如:

流fos依赖流fis,应该先关闭处理流fos,再关闭节点流fis。

流bos依赖流bis,应该先关闭处理流bos,再关闭节点流bis。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~


慕沐1462760 提问者 2020-09-16 16:54:15

先创建的FileOutputStream,后创建的BufferedOutputStream。关闭时,先关闭FileOutputStream,后关闭BufferedOutputStream,运行报错

这里的报错,是因为他们存在依赖关系吧,因为BufferedOutputStream对象的参数是FileOutputStream的对象

  • 同学你好,这里同学理解是正确的。 祝学习愉快~
    2020-09-16 17:31:18
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师