# Class RuntimeException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException

All Implemented Interfaces:
  `Serializable`

Direct Known Subclasses:
  `AnnotationTypeMismatchException, ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, CatalogException, ClassCastException, ClassNotPreparedException, CMMException, CompletionException, ConcurrentModificationException, DateTimeException, DOMException, DuplicateRequestException, EmptyStackException, EnumConstantNotPresentException, EventException, FileSystemAlreadyExistsException, FileSystemNotFoundException, FindException, IllegalArgumentException, IllegalCallerException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, IllformedLocaleException, ImagingOpException, InaccessibleObjectException, IncompleteAnnotationException, InconsistentDebugInfoException, IndexOutOfBoundsException, InternalException, InvalidCodeIndexException, InvalidLineNumberException, InvalidModuleDescriptorException, InvalidModuleException, InvalidRequestStateException, InvalidStackFrameException, JarSignerException, JMRuntimeException, LayerInstantiationException, LSException, MalformedParameterizedTypeException, MalformedParametersException, MatchException, MirroredTypesException, MissingResourceException, NegativeArraySizeException, NoSuchDynamicMethodException, NoSuchElementException, NoSuchMechanismException, NullPointerException, ObjectCollectedException, OpaqueFrameException, ProfileDataException, ProviderException, ProviderNotFoundException, RangeException, RasterFormatException, RejectedExecutionException, ResolutionException, SecurityException, SPIResolutionException, StructuredTaskScope.FailedExceptionPREVIEW, StructuredTaskScope.TimeoutExceptionPREVIEW, StructureViolationExceptionPREVIEW, TypeNotPresentException, UncheckedIOException, UndeclaredThrowableException, UnknownEntityException, UnmodifiableModuleException, UnmodifiableSetException, UnsupportedOperationException, VMDisconnectedException, VMMismatchException, VMOutOfMemoryException, WrongMethodTypeException, WrongThreadException, XPathException`

public class RuntimeException extends Exception
`RuntimeException` is the superclass of those exceptions that can be thrown during the normal operation of the Java Virtual Machine.

`RuntimeException` and its subclasses are unchecked exceptions. Unchecked exceptions do not need to be declared in a method or constructor's `throws` clause if they can be thrown by the execution of the method or constructor and propagate outside the method or constructor boundary.

See Java Language Specification:
  11.2 Compile-Time Checking of Exceptions
Since:
  1.0
See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  ``
  `RuntimeException()`
  Constructs a new runtime exception with `null` as its detail message.
  ``
  `RuntimeException(String message)`
  Constructs a new runtime exception with the specified detail message.
  ``
  `RuntimeException(String message, Throwable cause)`
  Constructs a new runtime exception with the specified detail message and cause.
  `protected`
  `RuntimeException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace)`
  Constructs a new runtime exception with the specified detail message, cause, suppression enabled or disabled, and writable stack trace enabled or disabled.
  ``
  `RuntimeException(Throwable cause)`
  Constructs a new runtime exception 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 Throwable

  `addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`
  Modifier and Type
  Method
  Description
  `final void`
  `addSuppressed(Throwable exception)`
  Appends the specified exception to the exceptions that were suppressed in order to deliver this exception.
  `Throwable`
  `fillInStackTrace()`
  Fills in the execution stack trace.
  `Throwable`
  `getCause()`
  Returns the cause of this throwable or `null` if the cause is nonexistent or unknown.
  `String`
  `getLocalizedMessage()`
  Creates a localized description of this throwable.
  `String`
  `getMessage()`
  Returns the detail message string of this throwable.
  `StackTraceElement[]`
  `getStackTrace()`
  Provides programmatic access to the stack trace information printed by `Throwable.printStackTrace()`.
  `final Throwable[]`
  `getSuppressed()`
  Returns an array containing all of the exceptions that were suppressed, typically by the `try`-with-resources statement, in order to deliver this exception.
  `Throwable`
  `initCause(Throwable cause)`
  Initializes the cause of this throwable to the specified value.
  `void`
  `printStackTrace()`
  Prints this throwable and its backtrace to the standard error stream.
  `void`
  `printStackTrace(PrintStream s)`
  Prints this throwable and its backtrace to the specified print stream.
  `void`
  `printStackTrace(PrintWriter s)`
  Prints this throwable and its backtrace to the specified print writer.
  `void`
  `setStackTrace(StackTraceElement[] stackTrace)`
  Sets the stack trace elements that will be returned by `Throwable.getStackTrace()` and printed by `Throwable.printStackTrace()` and related methods.
  `String`
  `toString()`
  Returns a short description of this throwable.

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  Creates and returns a copy of this object.
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `protected void`
  `finalize()`
  Deprecated, for removal: This API element is subject to removal in a future version.
  Finalization is deprecated and subject to removal in a future release.
  `final Class<?>`
  `getClass()`
  Returns the runtime class of this `Object`.
  `int`
  `hashCode()`
  Returns a hash code value for this object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `final void`
  `wait()`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
  `final void`
  `wait(long timeoutMillis)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  `final void`
  `wait(long timeoutMillis, int nanos)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

- ## Constructor Details

  - ### RuntimeException

    public RuntimeException()
    Constructs a new runtime exception with `null` as its detail message. The cause is not initialized, and may subsequently be initialized by a call to `Throwable.initCause(Throwable)`.

  - ### RuntimeException

    public RuntimeException(String message)
    Constructs a new runtime exception with the specified detail message. The cause is not initialized, and may subsequently be initialized by a call to `Throwable.initCause(Throwable)`.
    Parameters:
      `message` - the detail message. The detail message is saved for later retrieval by the `Throwable.getMessage()` method.

  - ### RuntimeException

    public RuntimeException(String message, Throwable cause)
    Constructs a new runtime exception with the specified detail message and cause.

    Note that the detail message associated with `cause` is not automatically incorporated in this runtime 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.4

  - ### RuntimeException

    public RuntimeException(Throwable cause)
    Constructs a new runtime exception 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 runtime 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.4

  - ### RuntimeException

    protected RuntimeException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace)
    Constructs a new runtime exception with the specified detail message, cause, suppression enabled or disabled, and writable stack trace enabled or disabled.
    Parameters:
      `message` - the detail message.
      `cause` - the cause. (A `null` value is permitted, and indicates that the cause is nonexistent or unknown.)
      `enableSuppression` - whether or not suppression is enabled or disabled
      `writableStackTrace` - whether or not the stack trace should be writable
    Since:
      1.7