Java throw
The throw keyword in Java is used to explicitly throw an exception from a method or any block of code. We can throw either checked or unchecked exception. The throw keyword is mainly used to throw custom exceptions.
Syntax in Java throw
throw Instance Example: throw new ArithmeticException("/ by zero");
But this exception i.e., Instance must be of type Throwable or a subclass of Throwable.
For example, an Exception is a sub-class of Throwable and user-defined exceptions typically extend the Exception class. Unlike C++, data types such as int, char, floats, or non-throwable classes cannot be used as exceptions.
The flow of execution of the program stops immediately after the throw statement is executed and the nearest enclosing try block is checked to see if it has a catch statement that matches the type of exception. If it finds a match, controlled is transferred to that statement otherwise next enclosing try block is checked, and so on. If no matching catch is found then the default exception handler will halt the program.
Java throw Examples
Example 1:
Java
// Java program that demonstrates the use of throw class ThrowExcep { static void fun() { try { throw new NullPointerException( "demo" ); } catch (NullPointerException e) { System.out.println( "Caught inside fun()." ); throw e; // rethrowing the exception } } public static void main(String args[]) { try { fun(); } catch (NullPointerException e) { System.out.println( "Caught in main." ); } } } |
Output
Caught inside fun(). Caught in main.
Example 2
Java
// Java program that demonstrates // the use of throw class Test { public static void main(String[] args) { System.out.println( 1 / 0 ); } } |
Output
Exception in thread "main" java.lang.ArithmeticException: / by zero
throw and throws in Java
In Java, Exception Handling is one of the effective means to handle runtime errors so that the regular flow of the application can be preserved. Java Exception Handling is a mechanism to handle runtime errors such as ClassNotFoundException, IOException, SQLException, RemoteException, etc.
In this article, we will learn about throw and throws in Java which can handle exceptions in Java.