黑马程序员技术交流社区

标题: BufferedOutputStream [打印本页]

作者: 霍振鹏    时间: 2014-4-20 10:07
标题: BufferedOutputStream
我怎么感觉BufferedOutputSteam 相对于其父类来说在功能上没有一丁点的扩展啊! 如果是这样的话,设计它的用意是什么啊!?
作者: 孙旌棋    时间: 2014-4-20 10:12
这是用到的装饰类的设计模式, 目的是增强已有对象, 功能相同却更加强大, 设计BufferedOutputSteam的用意就是写数据的时候加入了缓冲区, 可以加快写数据的速度.
作者: kuroro自走核炮    时间: 2014-4-20 10:17
BufferedOutputSteam
这个类比他的父类最大的特点就是增加了缓冲区。
作用就是先把底层数据批量扔到缓冲区中,然后再从缓冲区中提取数据输出。
举个例子,你要浇花,一次一次的去井里用花洒打水。
现在给你提供了一个桶,你可以利用桶打一大桶水,然后往花洒里灌,就减少了你去打水的次数,增加了效率。
这里的桶就相当于缓冲区。
当然如果你浇花的面积不大,花洒一壶就够,看不出太大区别。但是当你要浇花的数量增加的话,这个效率差异就会显现出来了。
作者: xtxiaolu    时间: 2014-4-20 10:18


不加Buffered和加Buffered的区别

作者: idream    时间: 2014-4-20 21:09
装饰设计模式,BufferedOutputStream实际上在里面内置啦一个数组,将读取到的数据先存储在数组中,当数组装满时,在将数据写出




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2