Программирование на языке Java

         

Вложенные операторы try



Вложенные операторы try

Операторы try можно вкладывать друг в друга аналогично тому, как можно создавать вложенные области видимости переменных. Если у оператора try низкого уровня нет раздела catch, соответствующего возбужденному исключению, стек будет развернут на одну ступень выше, и в поисках подходящего обработчика будут прове-рены разделы catch внешнего оператора try. Вот пример, в котором два оператора try вложены друг в друга посредством вызова метода. class MultiNest { static void procedure() { try { int c[] = { 1 }; c[42] = 99; } catch(ArrayIndexOutOfBoundsException e) { System.out.println("array index oob: " + e); } } public static void main(String args[]) { try { int a = args.length(); System.out.println("a = " + a); int b = 42 / a; procedure(); } catch (ArithmeticException e) { System.out.println("div by 0: " + e); } } }



Содержание раздела