public abstract class Writer
- Object
- Writer
ImplementsAutoCloseable
Known subtypesOutputStreamWriter, StringWriter
Abstract class for writing to character streams. The only methods that a subclass must implement are write(char[], int, int), flush(), and close(). Most subclasses, however, will override some of the methods defined here in order to provide higher efficiency, additional functionality, or both.
Since: JDK1.1, CLDC 1.0 See Also:OutputStreamWriter, Reader
Fields
protected Object lock | The object used to synchronize operations on this stream. |
Constructors
protected Writer() | Create a new character-stream writer whose critical sections will synchronize on the writer itself. |
protected Writer(Object lock) | Create a new character-stream writer whose critical sections will synchronize on the given object. |
Methods
Inherited methods
Field details
lock
protected Object lockThe object used to synchronize operations on this stream. For efficiency, a character-stream object may use an object other than itself to protect critical sections. A subclass should therefore use the object in this field rather than this or a synchronized method.
Constructor details
Writer
protected Writer()Create a new character-stream writer whose critical sections will synchronize on the writer itself.
Writer
protected Writer(Object lock)Create a new character-stream writer whose critical sections will synchronize on the given object.
lock - Object to synchronize on.
Method details
close
public abstract void close()
throws IOExceptionClose the stream, flushing it first. Once a stream has been closed, further write() or flush() invocations will cause an IOException to be thrown. Closing a previously-closed stream, however, has no effect.
Throws
flush
public abstract void flush()
throws IOExceptionFlush the stream. If the stream has saved any characters from the various write() methods in a buffer, write them immediately to their intended destination. Then, if that destination is another character or byte stream, flush it. Thus one flush() invocation will flush all the buffers in a chain of Writers and OutputStreams.
Throws
write
public void write(char[] cbuf)
throws IOExceptionWrite an array of characters.
Throws
write
public abstract void write(char[] cbuf, int off, int len)
throws IOExceptionWrite a portion of an array of characters.
Throws
write
public void write(int c)
throws IOExceptionWrite a single character. The character to be written is contained in the 16 low-order bits of the given integer value; the 16 high-order bits are ignored.
Subclasses that intend to support efficient single-character output should override this method.
Throws
write
public void write(String str)
throws IOExceptionWrite a string.
Throws
write
public void write(String str, int off, int len)
throws IOExceptionWrite a portion of a string.