java io流缓冲理解

bufferedinputstream和bufferedoutputstream:这两个类是在inputstream和outputstream的基础上增加了一个buffer的缓冲区,从而使数据不直接写入到流中,而是先写入buffer然后再一次性flush到流中,相信对于大多数人来说,不难理解bufferedinputstream和bufferedoutputstream的性能会有很大的提高。bufferedinputstream和bufferedoutputstream可以传入inputstream和outputstream类型的参数,这就意味着fileinputstream和fileoutputstream也可以作为其参数传入,这就相当于用了两层装饰者模式,在fileinputstream和fileoutputstream的基础上又增加了buffer的功能。bufferedoutputstream有多另外一个函数就是flush,也就是把写入的数据从缓冲区中释放到流里面,否则写入的数据将会等到缓冲区满了的时候再释放到流里面。

原文地址:https://www.cnblogs.com/panxuejun/p/5971305.html