0
OCAの準備中に練習問題に遭遇しましたが、abcde 3
の代わりに、なぜプログラムの印刷:abce 3
が表示されるのか分かりません。ここではプログラム:Javaでの例外の再スロー
'public static void main(String[] args) {
System.out.print("a");
try{
System.out.print("b");
throw new IllegalArgumentException();
}catch(IllegalArgumentException e){
System.out.print("c");
throw new RuntimeException("1");
}catch(RuntimeException e) {
System.out.print("d");
throw new RuntimeException("2");
}finally {
System.out.print("e");
throw new RuntimeException("3");
}
}'
最後のキャッチブロックを無視する理由についての説明は本当にありがとう!
'もう一つの問題は、最後のcatchブロックにスローされた例外は単に無視されていることである
catch
ブロック最終的にブロックに投げ込まれたものにマスクされている。はい、それは問題ですが、Javaに組み込まれている問題です:) finallyブロックから例外をスローしないでください。 – biziclop