JAVA的输出流 - java.io.OutputStream

 

继承关系

JAVA的输出流 - java.io.OutputStream_第1张图片

同InputStream一样实现了closeable接口外 实现了Flushable接口 flush方法

 

主要方法

 

JAVA的输出流 - java.io.OutputStream_第2张图片

 

 

/**
     * Writes the specified byte to this output stream. The general
     * contract for write is that one byte is written
     * to the output stream. The byte to be written is the eight
     * low-order bits of the argument b. The 24
     * high-order bits of b are ignored.
     * 

* Subclasses of OutputStream must provide an * implementation for this method. * * @param b the byte. * @exception IOException if an I/O error occurs. In particular, * an IOException may be thrown if the * output stream has been closed. 主要方法 把参数b写入流中 */ public abstract void write(int b) throws IOException; public void write(byte b[]) throws IOException { write(b, 0, b.length); } public void write(byte b[], int off, int len) throws IOException { if (b == null) { throw new NullPointerException(); } else if ((off < 0) || (off > b.length) || (len < 0) || ((off + len) > b.length) || ((off + len) < 0)) { throw new IndexOutOfBoundsException(); } else if (len == 0) { return; } for (int i = 0 ; i < len ; i++) { write(b[off + i]); } }

 /**
     * Flushes this output stream and forces any buffered output bytes
     * to be written out. The general contract of flush is
     * that calling it is an indication that, if any bytes previously
     * written have been buffered by the implementation of the output
     * stream, such bytes should immediately be written to their
     * intended destination.
     * 

* If the intended destination of this stream is an abstraction provided by * the underlying operating system, for example a file, then flushing the * stream guarantees only that bytes previously written to the stream are * passed to the operating system for writing; it does not guarantee that * they are actually written to a physical device such as a disk drive. *

* The flush method of OutputStream does nothing. * * @exception IOException if an I/O error occurs. 实现该方法 流中的bytes会被刷入intended destination中 如果intended destination是操作系统提供并管理的 该方法不会立刻写入 何时真正写入由操作系统决定 */ public void flush() throws IOException { }

 

 

你可能感兴趣的:(java基础)