Kodrill

Java SE 17 Silver (1Z0-825-JPN) 試験 / クラスの定義とインスタンスの使用 ・ 無料問題 4/5

クラスの定義とインスタンスの使用 問題4[static変数とstaticメソッド]

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

Main.java
class Counter {    static String log = "";​    static {        log += "S";    }​    {        log += "I";    }​    Counter() {        log += "C";    }}​public class Main {    public static void main(String[] args) {        new Counter();        new Counter();        System.out.println(Counter.log);    }}

選択肢

  • A.SICSIC
  • B.SIICC
  • C.ICICS
  • D.SICIC正解

解説実行して確認済み

static 初期化子 (static { }) は、クラスが最初に使われるときに1回だけ実行されます。インスタンス初期化子とコンストラクタは、インスタンスを生成するたびに、初期化子 → コンストラクタの順に実行されます。そのため S が1回、IC が2回で SICIC です。

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

「クラスの定義とインスタンスの使用」の要点を解説記事で読む

「クラスの定義とインスタンスの使用」の無料問題

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