我想了解interrupt()
方法的工作原理。所以我制作了一个示例程序,如下所示:
public class ThreadTest extends Thread {
public static void main(String[] args) {
ThreadTest t = new ThreadTest();
t.start();
}
public void run() {
String[] msg = {"Hello", "World", "test1", "test2"};
for (String str : msg) {
try {
System.out.println(str);
Thread.sleep(5000);
currentThread().interrupt();
} catch (InterruptedException e) {
return;
}
}
}
}
我期待只获得Hello作为输出。但我得到了:
Hello
World
任何人都可以解释一下,为什么我得到这个输出?