What is the relation between InputStream, Buffrere

2019-09-25 10:09发布

问题:

I always get confused when to process my input data how, which process. Different times i find different solutions. I am also not clear about their Hierarchy.

回答1:



InputStream is parent class of all input streams and readers. Classes that have Stream keyword will work with bytes whereas classes which have Reader keyword will work with characters.

Buffer is wrapper around these streams to decrease the system calls and increase performance and speed of reading.

Non buffered streams return single byte each time whereas Bufferd stream will not return until the buffer gets full.

For example if you take BufferedReader you can read a whole line using readLine() but in non buffered stream you must read single character using read() method.