【转】Closeable, Readable, Flushable, Appendable

时间:2021-01-31 10:51:35

Closeable:

package java.io;

import java.io.IOException;

public interface Closeable {
/**
* Closes this stream and releases any system resources associated
* with it. If the stream is already closed then invoking this
* method has no effect.
*/
public void close() throws IOException;
}

Readable:

package java.lang;

import java.io.IOException;

public interface Readable {

    /**
* Attempts to read characters into the specified character buffer.
* The buffer is used as a repository of characters as-is: the only
* changes made are the results of a put operation. No flipping or
* rewinding of the buffer is performed.
*/
public int read(java.nio.CharBuffer cb) throws IOException;
}

Flushable:

package java.io;

import java.io.IOException;

public interface Flushable {

    /**
* Flushes this stream by writing any buffered output to the underlying stream.
*/
void flush() throws IOException;
}

Appendable:

package java.lang;

import java.io.IOException;

public interface Appendable {

    /**
* Appends the specified character sequence to this Appendable.
* @return A reference to this Appendable
*/
Appendable append(CharSequence csq) throws IOException; /**
* Appends a subsequence of the specified character sequence to this Appendable.
* @return A reference to this Appendable
*/
Appendable append(CharSequence csq, int start, int end) throws IOException; /**
* Appends the specified character to this Appendable.
* @return A reference to this Appendable
*/
Appendable append(char c) throws IOException;
}

转自:https://blog.csdn.net/jjavaboy/article/details/43093435