DataOutputStream () VS DataOutputStream (new BufferedOutputStream ( ))

В коде Java Tutorials показан пример использования DataOutputStream класс и DataInputStream класс.

Фрагмент кода выглядит следующим образом:

//..
out = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(dataFile)));
//..
in = new DataInputStream(new BufferedInputStream(new FileInputStream(dataFile)));
//..

Мне было интересно, зачем нужно создавать новый BufferedOutputStream , когда мы создаем новый DataOutputStream ?

Разве это не избыточно, поскольку эта альтернатива тоже работает?: new DataOutputStream (new FileOutputStream (dataFile));

Как эта страница ] утверждает, что DataStreams уже предоставляет поток байтов вывода буферизованного файла. Так действительно ли требуется «двойная буферизация»?

Я изменил 2 строки кода (вывод и ввод), убрав BufferedOutputStream и BufferedInputStream , и все, кажется, работает нормально, поэтому мне было интересно, какова цель BufferedOutputStream a nd BufferedInputStream ?

10
задан user1032613 5 December 2017 в 06:15
поделиться