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.
1
solved What is the relation between InputStream, BuffreredInputStream, InputStreamReader and BufferedReader? [closed]