Kodrill

Java SE 17 Silver (1Z0-825-JPN) 試験 / 例外処理 ・ 無料問題 3/5

例外処理 問題3[try-catch文による例外処理]

次のコードを実行したときの出力を選んでください。

Main.java
public class Main {    static int test() {        int x = 1;        try {            x = 2;            return x;        } finally {            x = 3;            System.out.print("finally ");        }    }​    public static void main(String[] args) {        System.out.println(test());    }}

選択肢

  • A.2
  • B.finally 2正解
  • C.3
  • D.finally 3

解説実行して確認済み

try ブロックの中で return しても、メソッドを抜ける前に finally ブロックが必ず実行されます。ただし、戻り値は return 文を実行した時点の x の値 (2) で確定しており、finally で x を 3 に変えても戻り値は変わりません。そのため finally と出力された後に 2 が出力されます。

この問題の答えは、試験の対象バージョンでコードを実際に実行して確かめています。確かめ方は運営者情報に書いています。

「例外処理」の要点を解説記事で読む

「例外処理」の無料問題

ここで公開しているのは無料範囲の問題です。無料登録すると、解答の記録・ダッシュボードでの復習ができ、 プレミアムならこの問題セットの全問題と本番形式の模擬試験も解けます。