Многопоточность trainee
Какие способы создать поток в Java?
Ответ
(1) Унаследоваться от Thread и переопределить run(). Не лучший способ — лимит одного наследования. (2) Реализовать Runnable и передать в Thread: new Thread(() -> {...}).start(). Запускать поток нужно через start(), а не run() — вызов run() напрямую исполнит код в текущем потоке.
Разбор: Поток создают наследованием от Thread с переопределением run(), реализацией Runnable (передав в Thread), а запускают всегда через start(), а не run() — вызов run() напрямую исполняет код в текущем потоке. Дистракторы эксплуатируют главную ловушку (start vs run), путают Runnable с Callable (у Callable метод call() и нет start()) и выдают несуществующие методы вроде setRunnable().
Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.