java.lang.Throwable Class in Java

The Throwable class is the superclass of all errors and exceptions in the Java language. Only objects that are instances of this class (or one of its subclasses) are thrown by the Java Virtual Machine or can be thrown by the Java throw statement. Similarly, only this class or one of its subclasses can be the argument type in a catch clause.
Instances of two subclasses, Error and Exception, are conventionally used to indicate that exceptional situations have occurred. Typically, these instances are freshly created in the context of the exceptional situation so as to include relevant information (such as stack trace data).

Throwable class Declaration

Following is the declaration for java.lang.Throwable class −
public class Throwable
   extends Object
      implements Serializable

Throwable class Constructors

  • Throwable() - Constructs a new throwable with null as its detail message.
  • Throwable(String message) - Constructs a new throwable with the specified detail message.
  • Throwable(String message, Throwable cause) - Constructs a new throwable with the specified detail message and cause.
  • protected Throwable(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) - Constructs a new throwable with the specified detail message, cause, suppression enabled or disabled, and writable stack trace enabled or disabled.
  • Throwable(Throwable cause) - Constructs a new throwable with the specified cause and a detail message of (cause==null ? null : cause.toString()) (which typically contains the class and detail message of cause).

Throwable class Methods

  • 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 printStackTrace().
  • 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 getStackTrace() and printed by printStackTrace() and related methods.
  • String toString() - Returns a short description of this throwable.

Throwable class Example

public class ThrowableExample {
 public static void main(String[] args) {
  try{
   throwException(null); 
  }catch (Throwable e) {
   System.out.println(e.getMessage());
   System.out.println(e.getLocalizedMessage());
   System.out.println(e.getClass());
  }
 }
 
 private static void throwException(String str) throws Throwable{
  if(str == null){
   throw new Throwable("String is null.");
  }
 }
}

Exception Handling Related Posts


Comments