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.

Similar Reads

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....

Java throws

...