Нет никаких противоречий ... вы должны сравнивать BufferedReader
и BufferedWriter
.Они существуют, чтобы обернуть другие Reader
s и Writer
s соответственно.
Основная причина этого заключается в том, что разные типы Reader
s и Writer
s могут иметь разные способы инициализации и разныеспособы функционирования, не обязательно обертывающие InputStream
или OutputStream
вообще.В вашем примере BufferedReader
обертка InputStreamReader
, InputStreamReader
может (и обычно должна) инициализироваться как InputStream
, так и Charset
.Должна ли BufferedReader
иметь перегрузку для этого, когда единственной задачей является обеспечение буферизации?