Spec-Zone .ru
спецификации, руководства, описания, API
Содержание | Предыдущий | Следующий | Индекс

22.15 Класс java.io.OutputStream

Поток вывода принимает выходные байты и отправляет им некоторому приемнику.

public abstract class OutputStream {
	public abstract void write(int b) throws IOException;
	public void write(byte[] b)
		throws IOException, NullPointerException;
	public void write(byte[] b, int off, int len)
		throws IOException, NullPointerException,
			IndexOutOfBoundsException;
	public void flush() throws IOException;
	public void close() throws IOException;
}

22.15.1 public abstract void write(int b) throws IOException

Общий контракт для write тот один байт, пишется потоку вывода. Байт, который будет записан, является восемью битами младшего разряда параметра b. 24 бита старшего разряда b игнорируются.

Если байт не может быть записан ни по какой причине, IOException бросается. В частности IOException может быть брошен, если поток вывода был закрыт (§22.15.5).

22.15.2 public void write(byte[] b)
throws IOException, NullPointerException

Общий контракт для write(b) это, это должно иметь точно тот же самый эффект как вызов write(b, 0, b.length) (§22.15.3).

write(b) метод для класса OutputStream фактически выполняет такой вызов.

22.15.3 public void write(byte[] b, int off, int len)
throws IOException, NullPointerException, IndexOutOfBoundsException

Общий контракт для write(b, off, len) это некоторые из байтов в массиве b пишутся потоку вывода как будто по одному, в порядке; элемент b[off] первый записанный байт и b[off+len-1] последний байт, записанный этой работой.

Если b null, a NullPointerException бросается.

Если off отрицательно, или len отрицательно, или off+len больше чем длина массива b, тогда IndexOutOfBoundsException бросается.

Если байт не может быть записан ни по какой причине, IOException бросается. В частности IOException бросается, если поток вывода был закрыт (§22.15.5).

write(b, off, len) метод для класса OutputStream просто вызывает метод write (§22.15.1) неоднократно, однажды для каждого байта в b быть записанным.

22.15.4 public void flush() throws IOException

Общий контракт flush тот вызов, это - индикация, что, если какие-либо байты, ранее записанные, были буферизованы реализацией потока вывода, такие байты должны сразу быть записаны их намеченному месту назначения.

flush метод для класса OutputStream ничего не делает и просто возвращается.

22.15.5 public void close() throws IOException

Общий контракт close это, это закрывает поток вывода. Закрытый поток не может выполнить выходные операции и не может быть вновь открыт.

close метод для класса OutputStream ничего не делает и просто возвращается.


Содержание | Предыдущий | Следующий | Индекс

Спецификация языка Java (HTML, сгенерированный Блинчиком "сюзет" Pelouch 24 февраля 1998)
Авторское право © Sun Microsystems, Inc 1996 года. Все права защищены
Пожалуйста, отправьте любые комментарии или исправления к doug.kramer@sun.com

free hit counter