public abstract class Reader extends Object implements Readable, Closeable
InputStreamReader, 
Writer| Modifier and Type | Field and Description | 
|---|---|
| protected Object | lockThe object used to synchronize operations on this stream. | 
| Modifier | Constructor and Description | 
|---|---|
| protected  | Reader()Creates a new character-stream reader whose critical sections will synchronize on the reader
 itself. | 
| protected  | Reader(Object lock)Creates a new character-stream reader whose critical sections will synchronize on the given
 object. | 
| Modifier and Type | Method and Description | 
|---|---|
| abstract void | close()Closes the stream and releases any system resources associated with it. | 
| void | mark(int readAheadLimit)Marks the present position in the stream. | 
| boolean | markSupported()Tells whether this stream supports the mark() operation. | 
| int | read()Reads a single character. | 
| int | read(char[] cbuf)Reads characters into an array. | 
| abstract int | read(char[] cbuf,
    int off,
    int len)Reads characters into a portion of an array. | 
| boolean | ready()Tells whether this stream is ready to be read. | 
| void | reset()Resets the stream. | 
| long | skip(long n)Skips characters. | 
protected Object lock
protected Reader()
protected Reader(Object lock)
lock - The Object to synchronize on.public abstract void close()
                    throws IOException
close in interface Closeableclose in interface AutoCloseableIOException - If an I/O error occurspublic void mark(int readAheadLimit)
          throws IOException
readAheadLimit - Limit on the number of characters that may be read while still preserving the mark. After
        reading this many characters, attempting to reset the stream may fail.IOException - If the stream does not support mark(), or if some other I/O error occurspublic boolean markSupported()
public int read()
         throws IOException
Subclasses that intend to support efficient single-character input should override this method.
IOException - If an I/O error occurspublic int read(char[] cbuf)
         throws IOException
cbuf - Destination bufferIOException - If an I/O error occurspublic abstract int read(char[] cbuf,
                         int off,
                         int len)
                  throws IOException
cbuf - Destination bufferoff - Offset at which to start storing characterslen - Maximum number of characters to readIOException - If an I/O error occurspublic boolean ready()
              throws IOException
IOException - If an I/O error occurspublic void reset()
           throws IOException
IOException - If the stream has not been marked, or if the mark has been invalidated, or if the
            stream does not support reset(), or if some other I/O error occurspublic long skip(long n)
          throws IOException
n - The number of characters to skipIllegalArgumentException - If n is negative.IOException - If an I/O error occurs