Класс OutputStream
- Все реализуемые интерфейсы:
Closeable, Flushable, AutoCloseable
- Прямые известные подклассы:
ByteArrayOutputStream, FileOutputStream, FilterOutputStream, ObjectOutputStream, PipedOutputStream
public abstract class OutputStream extends Object implements Closeable, Flushable
Приложения, которым необходимо определить подкласс OutputStream, должны всегда предоставлять как минимум метод, записывающий один байт.
- Начиная с версии:
- 1.0
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
OutputStream() |
Конструктор для вызова подклассами. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
close() |
Закрывает этот поток вывода и освобождает все системные ресурсы, связанные с этим потоком. |
void |
flush() |
Сбрасывает буфер этого потока вывода и принудительно записывает все буферизованные выходные байты. |
static OutputStream |
nullOutputStream() |
Возвращает новый OutputStream, который отбрасывает все байты. |
void |
write |
Записывает b.length байтов из указанного массива байтов в этот поток вывода. |
void |
write |
Записывает len байтов из указанного массива байтов, начиная со смещения off, в этот поток вывода. |
abstract void |
write |
Записывает указанный байт в этот поток вывода. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Показывает, равен ли этот объект какому-либо другому объекту. |
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 |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения определенного времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения определенного времени. |
Подробное описание конструкторов
OutputStream
public OutputStream()
Подробное описание методов
nullOutputStream
public static OutputStream nullOutputStream()
OutputStream, который отбрасывает все байты. Возвращаемый поток изначально открыт. Поток закрывается вызовом метода close(). Последующие вызовы close() не оказывают никакого эффекта. Пока поток открыт, методы write(int),
write(byte[]) и write(byte[], int, int) ничего не делают. После закрытия потока все эти методы вызывают исключение
IOException.
Метод flush() ничего не делает.
- Возвращает:
OutputStream, который отбрасывает все байты- Начиная с версии:
- 11
write
public abstract void write(int b) throws IOException
write состоит в том, что в поток вывода записывается один байт. Записываемый байт — это восемь младших битов аргумента b. 24 старших бита b игнорируются.- Параметры:
-
b—byte. - Вызывает:
-
IOException— если возникает ошибка ввода-вывода. В частности, может быть выброшеноIOException, если поток вывода был закрыт.
write
public void write(byte[] b) throws IOException
b.length байтов из указанного массива байтов в этот поток вывода. Общее соглашение для write(b) состоит в том, что этот метод должен иметь точно такой же эффект, как вызов write(b, 0, b.length).- Параметры:
-
b— данные. - Вызывает:
-
IOException— если возникает ошибка ввода-вывода. - См. также:
write
public void write(byte[] b, int off, int len) throws IOException
len байтов из указанного массива байтов, начиная со смещения off, в этот поток вывода. Общее соглашение для write(b, off, len) состоит в том, что некоторые байты массива b записываются в поток вывода по порядку: элемент b[off] является первым записанным байтом, а b[off+len-1] — последним байтом, записанным этой операцией. Если b равно null, выбрасывается исключение NullPointerException.
Если off отрицательно, или len отрицательно, или off+len превышает длину массива b, выбрасывается исключение IndexOutOfBoundsException.
- Примечание к API:
- Рекомендуется переопределять этот метод в подклассах и предоставлять более эффективную реализацию.
- Требования к реализации:
- Метод
writeклассаOutputStreamвызывает метод записи с одним аргументом для каждого записываемого байта. - Параметры:
-
b— данные. -
off— начальное смещение в данных. -
len— количество байтов для записи. - Вызывает:
-
IOException— если возникает ошибка ввода-вывода. В частности, выбрасываетсяIOException, если поток вывода закрыт. -
IndexOutOfBoundsException— еслиoffотрицательно,lenотрицательно илиlenпревышаетb.length - off
flush
public void flush() throws IOException
flush состоит в том, что его вызов служит указанием: если реализация потока вывода буферизовала ранее записанные байты, их следует немедленно записать в место назначения. Если место назначения этого потока представляет собой абстракцию, предоставляемую базовой операционной системой, например файл, сброс потока гарантирует только передачу ранее записанных в поток байтов операционной системе для записи; он не гарантирует, что они действительно будут записаны на физическое устройство, например дисковод.
- Определено в:
-
flushв интерфейсеFlushable - Требования к реализации:
- Метод
flushклассаOutputStreamничего не делает. - Вызывает:
-
IOException— если возникает ошибка ввода-вывода.
close
public void close() throws IOException
close состоит в том, что этот метод закрывает поток вывода. Закрытый поток не может выполнять операции вывода и не может быть открыт повторно.- Определено в:
-
closeв интерфейсеAutoCloseable - Определено в:
-
closeв интерфейсеCloseable - Требования к реализации:
- Метод
closeклассаOutputStreamничего не делает. - Вызывает:
-
IOException— если возникает ошибка ввода-вывода.
© 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.