Can any of you explain what the differences are between throw
, throws
and Throwable
and when to use which?
throws
: Used when writing methods, to declare that the method in question throws the specified (checked) exception.
As opposed to checked exceptions, runtime exceptions (NullPointerExceptions etc) may be thrown without having the method declare throws NullPointerException
.
throw
: Instruction to actually throw the exception. (Or more specifically, the Throwable).
The throw keyword is followed by a reference to a Throwable
(usually an exception).
Example:
Throwable
: A class which you must extend in order to create your own, custom, throwable.Example: