Module java.base
Package java.io

# Class IOException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.io.IOException

All Implemented Interfaces:
  `Serializable`

Direct Known Subclasses:
  `AttachOperationFailedException`, `ChangedCharSetException`, `CharacterCodingException`, `CharConversionException`, `ClosedChannelException`, `ClosedConnectionException`, `EOFException`, `FileLockInterruptionException`, `FileNotFoundException`, `FilerException`, `FileSystemException`, `HttpRetryException`, `HttpTimeoutException`, `IIOException`, `InterruptedByTimeoutException`, `InterruptedIOException`, `InvalidPropertiesFormatException`, `JMXProviderException`, `JMXServerErrorException`, `MalformedURLException`, `ObjectStreamException`, `ProtocolException`, `RemoteException`, `SaslException`, `SocketException`, `SSLException`, `SyncFailedException`, `TransportTimeoutException`, `UnknownHostException`, `UnknownServiceException`, `UnsupportedEncodingException`, `UserPrincipalNotFoundException`, `UTFDataFormatException`, `WebSocketHandshakeException`, `ZipException`

public class IOException extends Exception
Signals that an I/O exception of some sort has occurred. This class is the general class of exceptions produced by failed or interrupted I/O operations.

Since:
  1.0
See Also:
  - `InputStream`
  - `OutputStream`
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `IOException()`
  Constructs an `IOException` with `null` as its error detail message.
  `IOException(String message)`
  Constructs an `IOException` with the specified detail message.
  `IOException(String message, Throwable cause)`
  Constructs an `IOException` with the specified detail message and cause.
  `IOException(Throwable cause)`
  Constructs an `IOException` with the specified cause and a detail message of `(cause==null ? null : cause.toString())` (which typically contains the class and detail message of `cause`).

- ## Method Summary

  ### Methods declared in class java.lang.Throwable

  `addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`

  ### Methods declared in class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### IOException

    public IOException()
    Constructs an `IOException` with `null` as its error detail message.

  - ### IOException

    public IOException(String message)
    Constructs an `IOException` with the specified detail message.
    Parameters:
      `message` - The detail message (which is saved for later retrieval by the `Throwable.getMessage()` method)

  - ### IOException

    public IOException(String message, Throwable cause)
    Constructs an `IOException` with the specified detail message and cause.

    Note that the detail message associated with `cause` is not automatically incorporated into this exception's detail message.

    Parameters:
      `message` - The detail message (which is saved for later retrieval by the `Throwable.getMessage()` method)
      `cause` - The cause (which is saved for later retrieval by the `Throwable.getCause()` method). (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
    Since:
      1.6

  - ### IOException

    public IOException(Throwable cause)
    Constructs an `IOException` with the specified cause and a detail message of `(cause==null ? null : cause.toString())` (which typically contains the class and detail message of `cause`). This constructor is useful for IO exceptions that are little more than wrappers for other throwables.
    Parameters:
      `cause` - The cause (which is saved for later retrieval by the `Throwable.getCause()` method). (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
    Since:
      1.6