Java的Closeable介面close()方法的意義
阿新 • • 發佈:2019-01-24
Closeable介面又繼承了另外的父介面AutoCloseable
其中close()方法是關閉流並且釋放與其相關的任何方法,如果流已被關閉,那麼呼叫此方法沒有效果。
InputStream和OutputStream類都實現了該介面。
原始碼:
package java.io; import java.io.IOException; /** * A {@code Closeable} is a source or destination of data that can be closed. * The close method is invoked to release resources that the object is * holding (such as open files). * * @since 1.5 */ public interface Closeable extends AutoCloseable { /** * Closes this stream and releases any system resources associated * with it. If the stream is already closed then invoking this * method has no effect. * * <p> As noted in {@link AutoCloseable#close()}, cases where the * close may fail require careful attention. It is strongly advised * to relinquish the underlying resources and to internally * <em>mark</em> the {@code Closeable} as closed, prior to throwing * the {@code IOException}. * * @throws IOException if an I/O error occurs */ public void close() throws IOException; }