# Interface JShellConsole

public interface JShellConsole
An interface providing functionality for `Console` in the user's snippet.

When a snippet calls a method on `Console`, the corresponding method in this interface will be called.

Since:
  21
See Also:
  - `Console`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Charset`
  `charset()`
  Returns the `Charset` object used for the `Console`.
  `void`
  `flush()`
  Flushes the console and forces any buffered output to be written immediately.
  `Reader`
  `reader()`
  Retrieves the unique `Reader` object associated with this console.
  `String`
  `readLine()`
  Preview.
  Reads a single line of text from the console.
  `String`
  `readLine(String prompt)`
  Provides a prompt, then reads a single line of text from the console.
  `char[]`
  `readPassword(String prompt)`
  Provides a prompt, then reads a password or passphrase from the console with echoing disabled.
  `PrintWriter`
  `writer()`
  Retrieves the unique `PrintWriter` object associated with this console.

- ## Method Details

  - ### writer

    PrintWriter writer()
    Retrieves the unique `PrintWriter` object associated with this console.
    Returns:
      The printwriter associated with this console
    See Also:
      - `Console.writer()`

  - ### reader

    Reader reader()
    Retrieves the unique `Reader` object associated with this console.
    Returns:
      The reader associated with this console
    See Also:
      - `Console.reader()`

  - ### readLine

    String readLine(String prompt) throws IOError
    Provides a prompt, then reads a single line of text from the console.
    Parameters:
      `prompt` - A prompt.
    Returns:
      A string containing the line read from the console, not including any line-termination characters, or `null` if an end of stream has been reached.
    Throws:
      `IOError` - If an I/O error occurs.
    See Also:
      - `Console.readLine()`

  - ### readLine

    String readLine() throws IOError
    `readLine` is a preview API of the Java platform.
    Programs can only use `readLine` when preview features are enabled.
    Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.
    Reads a single line of text from the console.
    Returns:
      A string containing the line read from the console, not including any line-termination characters, or `null` if an end of stream has been reached.
    Throws:
      `IOError` - If an I/O error occurs.
    Since:
      24
    See Also:
      - `Console.readLine()`

  - ### readPassword

    char[] readPassword(String prompt) throws IOError
    Provides a prompt, then reads a password or passphrase from the console with echoing disabled.
    Parameters:
      `prompt` - A prompt.
    Returns:
      A character array containing the password or passphrase read from the console, not including any line-termination characters, or `null` if an end of stream has been reached.
    Throws:
      `IOError` - If an I/O error occurs.
    See Also:
      - `Console.readPassword()`

  - ### flush

    void flush()
    Flushes the console and forces any buffered output to be written immediately.
    See Also:
      - `Console.flush()`

  - ### charset

    Charset charset()
    Returns the `Charset` object used for the `Console`.
    Returns:
      a `Charset` object used for the `Console`
    See Also:
      - `Console.charset()`