checked vs unchecked exceptions code example
Example 1: how to know if certain exception is checked or unchecked
1) Look at the hierarchy, if that exception extends RuntimeException then
it is an UNCHECKED exception
if that exception extends Exception, Throwable or
any other Checked Exception, then it is CHECKED exception.
2) Throw it, if it compiles, it is an UNCHECKED exception,
if not it is a CHECKED exception.
throw new SomeException();
Example 2: What are checked Exceptions
1) All the subclasses of Throwable class except error,Runtime Exception and
its subclasses are checked exceptions.
2) Checked exception should be thrown with keyword throws or should be provided
try catch block, else the program would not compile. We do get compilation
error.
Examples :
1) IOException,
2) SQlException,
3) FileNotFoundException,
4) InvocationTargetException,
5) CloneNotSupportedException
6) ClassNotFoundException
7) InstantiationException
Example 3: Unchecked exception
All subclasses of RuntimeException are called unchecked exceptions.
These are unchecked exceptions because compiler does not checks if a method
handles or throws exceptions. Program compiles even if we do not catch the
exception or throws the exception. If an exception occurs in the program,
program terminates. It is difficult to handle these exceptions
because there may be many places causing exceptions.
Example :
1) Arithmetic Exception
2) ArrayIndexOutOfBoundsException
3) ClassCastException
4) IndexOutOfBoundException
5) NullPointerException
6) NumberFormatException
7) StringIndexOutOfBounds
8) UnsupportedOperationException
Example 4: checked unchecked through js
document.getElementById("checkbox_id").checked;
Example 5: what do you do with checked exception
I would either handle or declare. I Declare using THROWS keyword or handle by
using TRY&CATCH block. If I will use it again I would handle it. If it will
occur only once than I would use THROWS keyword
Example 6: checked vs unchecked exceptions
1) Checked Exception is required to be handled by
compile time while Unchecked Exception doesn't.
2) Checked Exception is direct sub-Class of Exception
while Unchecked Exception are of RuntimeException.
Checked Exceptions:
No Such Method Exception
Class Not Found Exception
File Not Found Exception
No Such Field Exception
Unchecked exceptions occur at runtime.
No Such Element Exception
Arithmetic Exception
Null Pointer Exception
Array Index Out of Bounds
Exception