Hay declaraciones de retorno en el bloque de declaraciones try y en el bloque de declaraciones finalmente , pero no hay una declaración de retorno en el bloque de declaraciones catch .
El código es el siguiente:
publicclassMain{publicstaticvoidmain(String[]args){System.out.println(test2());}publicstaticinttest2(){inti=10;try{System.out.println(try Statement);return--i;}catch( Excepción){System.out.println(declaración de captura);}finalmente{System.out.println(declaración final);return--i;}}}
Los resultados de ejecución son los siguientes:
declaración de prueba finalmente declaración 8
Orden de ejecución:
1. Primero ejecute la declaración en el bloque try, incluida la operación de expresión en la declaración de retorno, pero no regrese.
2. Ejecute todo el código en el bloque de declaración finalmente.
3. Finalmente, descubrí que hay una declaración de retorno en el bloque de declaración finalmente y regreso desde aquí.