ほぷしぃ

Java言語入門 〜C言語を学んだ君へ〜

[第13回]練習問題 第2問解答

第13回 第2問解答

13練習問題2解答

第13回 第2問解説

例外が発生した時にどのように処理するのかという問題でした。

1.Dの表示

main()メソッドにある、func1()メソッドを実行します。
func1()メソッド内でエラーが起きるので、catchブロック内を実行します。
ここで、"D"が表示されます。

2.Eの表示

例外が発生したのでfunc1()メソッドを呼び出したmain()に戻ろうとしますが その前にfunc1()メソッド内にはfinallyブロックがあるので、先にこちらを実行してから戻ります。
"E"が表示されます。

3.Fの表示

戻ったmain内にもfinallyがあるので、実行します。
func2()メソッドを呼び出しています。
func2()メソッドが実行され、tryブロック内の処理が行われます。
"F"が表示されます。

4.Hの表示

catchブロックになる例外はないので、finallyブロックを処理します。
"H"が表示されます。

5.Bの表示

finallyブロックが処理されたあとmain内にあるfinallyの続きが実行されます。
"B"が表示されます。

6.Cの表示

tryブロックの処理が終了したので、tryの外にある"C"が表示されます。



第2問-問題へ ページのトップへ 第14回へ