まず try を実行し、例外がある場合は catch を実行し、とにかく最後に実行します。
関数は最終的にその部分を確実に実行します。
関数の実行処理に関しては、リターンがあった場合、関数はデータを特定の場所に保存し、メイン関数に「もう実行しません。次に実行してください」と伝え、関数は次のようになります。が発売されました。
ただし、関数内でfinallyが出現すると、finallyは常に実行されます。そのため、returnがtryまたはcatchで実行された場合でも、関数はこの時点では終了せず、代わりにmain関数に実行を指示しません。この時点で、finally に return が出現すると、return の値が try または catch の値を上書きし、main 関数に次のように指示されます。私はそれを実行しません、あなたが行って実行してください。したがって、main関数は最終的に戻り値を取得します。つまり、サブ関数の戻り値は常にfinallyの戻り値になります(呼び出された関数に値がある限り)。