Java 17 Silver ラボ

学習の画面へ

コンパクトコンストラクタ

このコードを実行するとどうなるか。

public class Main {
    public static void main(String[] args) {
        Age a = new Age(-1);
        System.out.println(a.value());
    }
}

record Age(int value) {
    Age {
        if (value < 0) {
            throw new IllegalArgumentException("negative");
        }
    }
}
  1. A -1 と出力される
  2. B 0 と出力される
  3. C 実行時に例外が発生する
  4. D コンパイルエラーになる
正解と解説を見る

正解: C

ポイント

「レコード・クラスの作成と使用」をこのサイトで解く (記録・間違えた問題の解き直し・AI教師への質問)