无法理解interrupt()在java中的工作原理

时间:2015-05-30 21:45:00

标签: java multithreading interrupt

我想了解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

任何人都可以解释一下,为什么我得到这个输出?

0 个答案:

没有答案