马克-to-win:接着我们看子线程如何捕获主线程的异常

例:1.5.4_2

import java.lang.Thread.UncaughtExceptionHandler;
class ThreadMark_to_win extends Thread  {
    Thread mainT;
    Test test;
    ThreadMark_to_win(Thread t1,Test t2)
    {
        mainT = t1;
        test=t2;
        mainT.setUncaughtExceptionHandler(new UncaughtExceptionHandler() {
            public void uncaughtException(Thread t, Throwable e) {
                System.out.println("在子程序处理呢, 传进来的参数是"+test.name+"   "+t.getName()+"   "+ e.getMessage());
            }
        });       
    }
    public void run()
    {
        for(int i=0;i<3;i++)
        {  
            try {
                Thread.sleep(100);
            } catch (InterruptedException e) {
            }
            System.out.println("在子线程"+i);
        }
    }
}
public class Test {
    String name="马克-to-win在主线程";
    public static void main(String[] args) {
        Thread mainT = Thread.currentThread();
        Test t=new Test();

收藏 打印