Returns the cause of this throwable or
null
if the cause is nonexistent or unknown. (The cause is the throwable that caused this throwable to get thrown.)
This implementation returns the cause that was supplied via one of the constructors requiring a Throwable
, or that was set after creation with the Throwable.initCause(Throwable)
method. While it is typically unnecessary to override this method, a subclass can override it to return a cause set by some other means. This is appropriate for a "legacy chained throwable" that predates the addition of chained exceptions to Throwable
. Note that it is not necessary to override any of the PrintStackTrace
methods, all of which invoke the getCause
method to determine the cause of a throwable.