Existem instruções de retorno no bloco de instruções try e no bloco de instruções catch , mas não há instruções de retorno no bloco de instruções finalmente e há uma exceção .
O código é o seguinte:
publicclassMain{publicstaticvoidmain(String[]args){System.out.println(test3());}publicstaticinttest3(){inti=10;try{System.out.println(try statement);intj=10/0;return- -i;}catch(Exceptione){System.out.println(instrução catch);return--i;}finalmente{System.out.println(instrução finalmente);}}}
Os resultados da execução são os seguintes:
instrução try instrução catch finalmente instrução 9
Ordem de execução:
1. Primeiro execute a instrução no bloco try, se ocorrer uma exceção, capture a exceção.
2. Execute as instruções no bloco catch, incluindo a operação de expressão na instrução return, mas não retorne.
3. Execute todo o código no bloco de instruções finalmente.
4. Finalmente, execute return no bloco catch.