Kodrill

Java SE 17 Gold (1Z0-826-JPN) 試験 / 並列処理 ・ 無料問題 1/5

並列処理 問題1[Thread および Runnable を使用したスレッドの作成]

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

Main.java
public class Main {    public static void main(String[] args) throws InterruptedException {        Thread t = new Thread(() -> System.out.print(Thread.currentThread().getName() + " "), "worker");        t.run();        t.start();        t.join();        System.out.println("end");    }}

選択肢

  • A.worker main end
  • B.main worker end正解
  • C.worker end
  • D.worker worker end

解説実行して確認済み

run() を直接呼ぶと、新しいスレッドは作られず、呼び出したスレッド (main) で普通のメソッドとして実行されます。新しいスレッドで実行するのは start() を呼んだときで、このとき名前 "worker" のスレッドで処理が動きます。join() でそのスレッドの終了を待ってから end を出力するので、出力の順番は決まっています。

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

「並列処理」の要点を解説記事で読む

「並列処理」の無料問題

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