@NoneDisable

Зачем нужны методы, считывающие или вводящие примитивы?

Возьмем, например, класс RandomAccessFile. Я не могу понять, зачем там определены методы writeInt, writeDouble, writeChar, если это все в конечном счете будем иметь вид строки в текстовом файле?
  • Вопрос задан
  • 200 просмотров
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Java
Седой и строгий
Потому что не всегда и не везде будет записываться именно текстовый файл. И ещё потому, что если у кого-нибудь есть источник целых чисел и необходимость из этого источника в файл записать например гигабайт данных, то конвертация данных в строки бесцельно сожрёт как память, так и процессорное время.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
xez
@xez Куратор тега Java
TL Junior Roo
"Текстовый файл" - это всего лишь одна из абстракций.
Все файлы состоят в конечном счете из нулей и единичек.
Ответ написан
Комментировать
mayton2019
@mayton2019 Куратор тега Java
Bigdata Engineer
RandomAccessFile, FileInputStream - это абстракции поверх системного I/O. В идеале они должны
иметь всего 1 метод. Чтения блока байтов в буфер. Но идя навстречу разработчику они любезно
добавили чтение примитивов чтоб читать двоичные форматы например JPG, MP3, SQlite и прочее
в виде sequence из примитивов в правильном порядке.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы