Can any of you explain what the differences are between
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
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).
Throwable: A class which you must extend in order to create your own, custom, throwable.