compact1, compact2, compact3
java.io

## Class IOException

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

- All Implemented Interfaces:
    Serializable
  Direct Known Subclasses:
    ChangedCharSetException, CharacterCodingException, CharConversionException, ClosedChannelException, EOFException, FileLockInterruptionException, FileNotFoundException, FilerException, FileSystemException, HttpRetryException, IIOException, InterruptedByTimeoutException, InterruptedIOException, InvalidPropertiesFormatException, JMXProviderException, JMXServerErrorException, MalformedURLException, ObjectStreamException, ProtocolException, RemoteException, SaslException, SocketException, SSLException, SyncFailedException, UnknownHostException, UnknownServiceException, UnsupportedDataTypeException, UnsupportedEncodingException, UserPrincipalNotFoundException, UTFDataFormatException, 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:
    JDK1.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 inherited from class java.lang.Throwable

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

    - ### Methods inherited from class java.lang.Object

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

- - ### Constructor Detail

    - #### 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

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.