Java SE 17 Silver (1Z0-825-JPN) 試験 / 例外処理 ・ 無料問題 2/5
例外処理 問題2[例外処理の仕組みとチェック例外、非チェック例外、エラーの違い]
次のコードをコンパイルした結果として正しいものを選んでください。
import java.io.IOException;public class Main { static void load() throws IOException { throw new IOException("fail"); } public static void main(String[] args) { load(); System.out.println("done"); }}選択肢
- A.コンパイルに成功し、実行すると IOException が発生する
- B.9行目でコンパイルエラーになる正解
- C.5行目でコンパイルエラーになる
- D.4行目でコンパイルエラーになる
解説実行して確認済み
load は throws でチェック例外 IOException を宣言しているので、呼び出す側は try-catch で捕捉するか、自分のメソッドにも throws IOException を宣言しなければなりません。main はどちらもしていないため、9行目がコンパイルエラーです。load の中で throw している5行目は、throws を宣言しているので問題ありません。
この問題の答えは、試験の対象バージョンでコードを実際に実行して確かめています。確かめ方は運営者情報に書いています。
Java SE 17 Silver (1Z0-825-JPN) 試験 の他の分野の無料問題
ここで公開しているのは無料範囲の問題です。無料登録すると、解答の記録・ダッシュボードでの復習ができ、 プレミアムならこの問題セットの全問題と本番形式の模擬試験も解けます。