-
Автор темы
- #1
Почему println()/print() класса PrintStream (реализация OutputStream aka байтовый поток) записывает символы/строки в консоль посимвольно,
А read() класса BufferedInputStream (реализация InputStream aka байтовый поток) возвращает символы/строки побайтово?
У меня нет вопросов к BufferedInputStream, у меня вопросы к PrintStream (либо я че-то не понял)
Ведь если ты не хочешь, чтобы read() возвращал строки по байтам, ты используешь InputStreamReader (реализация Reader aka символьный поток), который делает тоже самое, что и BufferedInputStream, но посимвольно
А какой смысл тогда от голого OutputSteamWriter (реализация Writer aka символьный поток), если PrintStream делает по сути тоже самое?
Если бы методы PrintStream записывали символы по байтам, как и подобает классу, реализующий байтовый поток, я бы понял логику, но мало того что в этом нет логики, так теперь я не вижу логики в классе OutputSteamWriter
А read() класса BufferedInputStream (реализация InputStream aka байтовый поток) возвращает символы/строки побайтово?
У меня нет вопросов к BufferedInputStream, у меня вопросы к PrintStream (либо я че-то не понял)
Ведь если ты не хочешь, чтобы read() возвращал строки по байтам, ты используешь InputStreamReader (реализация Reader aka символьный поток), который делает тоже самое, что и BufferedInputStream, но посимвольно
А какой смысл тогда от голого OutputSteamWriter (реализация Writer aka символьный поток), если PrintStream делает по сути тоже самое?
Если бы методы PrintStream записывали символы по байтам, как и подобает классу, реализующий байтовый поток, я бы понял логику, но мало того что в этом нет логики, так теперь я не вижу логики в классе OutputSteamWriter