Код РАБОТАЕТ, с ним всё ОК !!!
("Тикет от конкретной задачи открепил")
Сам вопрос после кода :
public static volatile int numSeconds = 3;
public static void main(String[] args) throws InterruptedException {
RacingClock clock = new RacingClock();
Thread.sleep(3500);
clock.interrupt();
}
public static class RacingClock extends Thread {
public RacingClock() {
start();
}
@Override
public void run() {
try {
while (!isInterrupted()) {
if (numSeconds > 0) {
System.out.printf("%d ", numSeconds);
numSeconds--;
} else if (numSeconds == 0) {
System.out.print("Марш!");
break;
}
Thread.sleep(1000);
}
} catch (InterruptedException e) {
System.out.println("Прервано!");
}
}
}
Вопрос:
В try /catch (27 строка) я ловлю ошибку InterruptedException !
Она возникает из-за того, что я прервал нить (25 строка) Thread.sleep(1000) ???