Class Writer

java.lang.Object
java.io.Writer
All Implemented Interfaces:
AutoCloseable
Direct Known Subclasses:
OutputStreamWriter, StringWriter

public abstract class Writer extends Object implements AutoCloseable
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
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected Object
    The object used to synchronize operations on this stream.
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    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.
  • Method Summary

    Modifier and Type
    Method
    Description
    abstract void
    Close the stream, flushing it first.
    abstract void
    Flush the stream.
    void
    write(char[] cbuf)
    Write an array of characters.
    abstract void
    write(char[] cbuf, int off, int len)
    Write a portion of an array of characters.
    void
    write(int c)
    Write a single character.
    void
    Write a string.
    void
    write(String str, int off, int len)
    Write a portion of a string.

    Methods inherited from class Object

    clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected Object
     
    boolean
    Indicates whether some other object is "equal to" this one.
    final Class
    Returns the runtime class of an object.
    int
    Returns a hash code value for the object.
    final void
    Wakes up a single thread that is waiting on this object's monitor.
    final void
    Wakes up all threads that are waiting on this object's monitor.
    Returns a string representation of the object.
    final void
    Causes current thread to wait until another thread invokes the method or the method for this object.
    final void
    wait(long timeout)
    Causes current thread to wait until either another thread invokes the method or the method for this object, or a specified amount of time has elapsed.
    final void
    wait(long timeout, int nanos)
    Causes current thread to wait until another thread invokes the method or the method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed.
  • Field Details

    • lock

      protected Object lock
      The 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 IOException
      Close 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.
      Specified by:
      close in interface AutoCloseable
      Throws:
      IOException
    • flush

      public abstract void flush() throws IOException
      Flush 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:
      IOException
    • write

      public void write(char[] cbuf) throws IOException
      Write an array of characters.
      Throws:
      IOException
    • write

      public abstract void write(char[] cbuf, int off, int len) throws IOException
      Write a portion of an array of characters.
      Throws:
      IOException
    • write

      public void write(int c) throws IOException
      Write 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:
      IOException
    • write

      public void write(String str) throws IOException
      Write a string.
      Throws:
      IOException
    • write

      public void write(String str, int off, int len) throws IOException
      Write a portion of a string.
      Throws:
      IOException