Es gibt Return -Anweisungen im Try -Anweisungsblock und Final -Anweisungsblock, aber keine Return -Anweisung im Catch -Anweisungsblock.
Der Code lautet wie folgt:
publicclassMain{publicstaticvoidmain(String[]args){System.out.println(test2());}publicstaticinttest2(){inti=10;try{System.out.println(try Statement);return--i;}catch( Ausnahme){System.out.println(catch-Anweisung);}finally{System.out.println(finally-Anweisung);return--i;}}}
Die Laufergebnisse sind wie folgt:
try-Anweisung, schließlich Anweisung 8
Ausführungsreihenfolge:
1. Führen Sie zunächst die Anweisung im Try-Block aus, einschließlich der Ausdrucksoperation in der Return-Anweisung, aber kehren Sie nicht zurück.
2. Führen Sie den gesamten Code im „finally“-Anweisungsblock aus.
3. Schließlich habe ich festgestellt, dass es im Anweisungsblock „final“ eine Return-Anweisung gibt und von hier aus zurückgekehrt ist.