Nested try block:Â
try block inside try block is known as nested try block.
Note: Exception handler must be also nested in case try block is nested.
Syntax of nested try block:
try{        //block of statements         try{                  //block of statements            }catch(Exception handler class){               } }catch(Exception handler class){ } |
Example:
NestedTryExample.java
/** * This is a simple program used to show * the use of nested try block. * @author w3spoint */ class ArithmaticTest{ int array[]={10,20,30,40}; int num1 = 50; int num2 = 10; /** * This method is used to show the use of nested try block. * @author w3spoint */ public void multipleCatchTest(){ try{ try{ //java.lang.ArithmeticException here if num2 = 0. System.out.println(num1/num2); System.out.println("4th element of given array = " + array[3]); //ArrayIndexOutOfBoundsException here. System.out.println("5th element of given array = " + array[4]); //Compile time error here. }catch(ArrayIndexOutOfBoundsException e){ //print exception. System.out.println(e); }catch(ArithmeticException e){//catch ArithmeticException here. //print exception. System.out.println(e); } int num = Integer.parseInt("30"); System.out.println(num); //catch NumberFormatException here. }catch(NumberFormatException e){ //print exception. System.out.println(e); } System.out.println("Remaining code after exception handling."); } } public class NestedTryExample { public static void main(String args[]){ //creating ArithmaticTest object ArithmaticTest obj = new ArithmaticTest(); //method call obj.multipleCatchTest(); } } |
Output:
5 4th element of given array = 40 java.lang.ArrayIndexOutOfBoundsException: 4 30 Remaining code after exception handling. |
Download this example.
Next Topic: Finally in java with example.
Previous Topic: Multiple catch blocks in java with example.