В блоке операторов try и блоке операторов catch есть операторы return , но в блоке операторовfinally нет оператора return и имеется исключение .
Код выглядит следующим образом:
publicclassMain{publicstaticvoidmain(String[]args){System.out.println(test3());}publicstaticinttest3(){inti=10;попробуйте {System.out.prin tln(оператор try);intj=10/0;return--i;}catch(Exceptione){System.out.println(оператор catch);return--i;}finally{System.out.println(оператор окончательно) ;}}}
Результаты бега следующие:
оператор try, оператор catch, наконец, оператор 9
Порядок выполнения:
1. Сначала выполните оператор в блоке try, если возникнет исключение, перехватите его.
2. Выполните инструкции в блоке catch, включая операцию выражения в инструкции return, но не возвращайте результат.
3. Выполните весь код в блоке операторовfinally.
4. Наконец, выполните return в блоке catch.