java中給出一個(gè)主線(xiàn)程要join子線(xiàn)程的例子

下面給出了一個(gè)join和interrupt互動(dòng)的例子,還是主線(xiàn)程要join子線(xiàn)程。
例:1.5.3_1-本章源碼
class ThreadMark_to_win extends Thread {
    Thread mainT;
    int e;
    public void run() {
        for (int i = 0; i < 10; i++)
        {
            try {
                Thread.sleep(100);
            } catch (InterruptedException e1) {
                e1.printStackTrace();
            }
            if(i==4) mainT.interrupt();
            e = e + i;
        }
        System.out.println("完成"+"e 在子線(xiàn)程"+e);
    }
    public void setMainThread(Thread t1) {
        mainT=t1;
      
    }
}
public class Test {
    public static void main(String[] args) {
        Thread mainT = Thread.currentThread();
        ThreadMark_to_win tm = new ThreadMark_to_win();
        tm.setMainThread(mainT);
        tm.start();
        try {
            tm.join();
        } catch (InterruptedException e) {
            System.out.println("我是主程序, 也被打斷");
        }
        System.out.println("主線(xiàn)程e = " + tm.e);
    }
}
馬克- to-win:馬克 java社區(qū):防盜版實(shí)名手機(jī)尾號(hào): 73203。
輸出結(jié)果:
我是主程序, 也被打斷
主線(xiàn)程e = 10
完成e 在子線(xiàn)程45

后續(xù):
馬克-to-win:在上述的例子中:主線(xiàn)程還是想join子線(xiàn)程,但子線(xiàn)程當(dāng)計(jì)算到i==4時(shí),打斷了主線(xiàn)程,所以主線(xiàn)程打出e=10;但子線(xiàn)程繼續(xù)自己的線(xiàn)程運(yùn)行,所以打印出“完成e 在子線(xiàn)程45”