finally 句で return してはいけない
finally 句で return すると try{} 句の中で発生した例外が握りつぶされる。
public static void main(String[] args) { try { throw new RuntimeException(); } finally { return; } }
上記コードを実行すると、RuntimeException は発生せず何も表示されずにプログラムが終了する。
当然だが、finally 句で try 句の後始末以外の処理を書いてはいけない。