Java / Java Multithreading
indicates that the object has to stop doing what it does by calling interrupt() on the thread object.
When it receives an interrupt, it returns from the run() method .
Interrupted. lets skip the color.java.lang.InterruptedException: sleep interrupted
When it iterates through colors array and at index 1,(YELLOW) the interrupt() is called on the executing thread (which becomes active after sleep), when it iterates through index 2, (ORANGE) sleep does not run because it is interrupted so it skips printing ORANGE.
More Related questions...