Spec-Zone.ru › OpenJDK 27

Класс BufferedOutputStream

java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
java.io.BufferedOutputStream
Все реализуемые интерфейсы:
Closeable, Flushable, AutoCloseable
public class BufferedOutputStream extends FilterOutputStream
Класс реализует буферизованный выходной поток. Создав такой выходной поток, приложение может записывать байты в базовый выходной поток, не вызывая обязательно обращение к базовой системе для каждого записанного байта.
Примечание к API:
После обёртывания в BufferedOutputStream базовый OutputStream не следует использовать напрямую или оборачивать в другой поток.
Начиная с:
1.0

Краткое описание полей

Модификатор и тип Поле Описание
protected byte[] buf
Внутренний буфер для хранения данных.
protected int count
Количество допустимых байтов в буфере.

Поля, объявленные в классе FilterOutputStream

out
Модификатор и тип Поле Описание
protected OutputStream out
Базовый выходной поток, данные которого фильтруются.

Краткое описание конструкторов

Конструктор Описание
BufferedOutputStream(OutputStream out)
Создаёт новый буферизованный выходной поток для записи данных в указанный базовый выходной поток.
BufferedOutputStream(OutputStream out, int size)
Создаёт новый буферизованный выходной поток для записи данных в указанный базовый выходной поток с заданным размером буфера.

Краткое описание методов

Модификатор и тип Метод Описание
void flush()
Сбрасывает буфер этого выходного потока.
void write(byte[] b, int off, int len)
Записывает len байтов из указанного массива байтов, начиная со смещения off, в этот буферизованный выходной поток.
void write(int b)
Записывает указанный байт в этот буферизованный выходной поток.

Методы, объявленные в классе FilterOutputStream

close, write
Модификатор и тип Метод Описание
void close()
Закрывает этот выходной поток и освобождает все системные ресурсы, связанные с ним.
void write(byte[] b)
Записывает b.length байтов в этот выходной поток.

Методы, объявленные в классе OutputStream

nullOutputStream
Модификатор и тип Метод Описание
static OutputStream nullOutputStream()
Возвращает новый OutputStream, отбрасывающий все байты.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Показывает, равен ли этот объект какому-либо другому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии.
Финализация объявлена устаревшей и будет удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.

Подробное описание полей

buf

protected byte[] buf
Внутренний буфер для хранения данных.

count

protected int count
Количество допустимых байтов в буфере. Это значение всегда находится в диапазоне от 0 до buf.length; элементы с buf[0] по buf[count-1] содержат допустимые данные байтов.

Подробное описание конструкторов

BufferedOutputStream

public BufferedOutputStream(OutputStream out)
Создаёт новый буферизованный выходной поток для записи данных в указанный базовый выходной поток.
Параметры:
out — базовый выходной поток.

BufferedOutputStream

public BufferedOutputStream(OutputStream out, int size)
Создаёт новый буферизованный выходной поток для записи данных в указанный базовый выходной поток с заданным размером буфера.
Параметры:
out — базовый выходной поток.
size — размер буфера.
Исключения:
IllegalArgumentException — если size <= 0.

Подробное описание методов

write

public void write(int b) throws IOException
Записывает указанный байт в этот буферизованный выходной поток.
Переопределяет:
write в классе FilterOutputStream
Параметры:
b — байт для записи.
Исключения:
IOException — если произошла ошибка ввода-вывода.

write

public void write(byte[] b, int off, int len) throws IOException
Записывает len байтов из указанного массива байтов, начиная со смещения off, в этот буферизованный выходной поток.

Обычно этот метод сохраняет байты из заданного массива в буфере данного потока, сбрасывая буфер в базовый выходной поток при необходимости. Однако, если запрошенная длина не меньше размера буфера этого потока, метод сбрасывает буфер и записывает байты непосредственно в базовый выходной поток. Таким образом, повторные вызовы BufferedOutputStream не приводят к ненужному копированию данных.

Переопределяет:
write в классе FilterOutputStream
Параметры:
b — данные.
off — начальное смещение в данных.
len — количество записываемых байтов.
Исключения:
IOException — если произошла ошибка ввода-вывода.
IndexOutOfBoundsException — если off отрицательно, len отрицательно или len больше, чем b.length - off
См. также:
  • FilterOutputStream.write(int)

flush

public void flush() throws IOException
Сбрасывает буфер этого выходного потока. При этом все буферизованные выходные байты принудительно записываются в базовый выходной поток.
Определён в:
flush в интерфейсе Flushable
Переопределяет:
flush в классе FilterOutputStream
Исключения:
IOException — если произошла ошибка ввода-вывода.
См. также:
  • FilterOutputStream.out

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API