UncaughtExceptionHandler异常处理机制
解释UncaughtExceptionHandler类是java1.5里新增的 Thread类里面的一个函数式接口类的,类名意思为 未捕获的异常处理该类的注释接口意思接口处理器时调用线程突然终止,由于未捕获到异常。当一个线程要终止由于未捕获到异常的Java虚拟机将查询线程其使用的UncaughtExceptionHandler getUncaughtExceptionHandler ,将调用处理程
·
解释
UncaughtExceptionHandler类是java1.5里新增的 Thread类里面的一个函数式接口类的,类名意思为 未捕获的异常处理
该类的注释接口意思
接口处理器时调用线程突然终止,由于未捕获到异常。
当一个线程要终止由于未捕获到异常的Java虚拟机将查询线程其使用的UncaughtExceptionHandler getUncaughtExceptionHandler ,将调用处理程序的uncaughtException方法,将线程和异常作为参数。 如果一个线程一直没有它的UncaughtExceptionHandler明确设置,那么它的ThreadGroup对象作为其UncaughtExceptionHandler的 。 如果ThreadGroup对象对处理异常没有特殊的要求,它可以将调用转发给默认的未捕获异常处理程序 。
用于
多线程或者子线程报错而未报出错误时,很多时候我们写完代码,运行之后老是会报异常。却没发现应该去捕获它。在多线程的情况下,主线程无法捕捉到异常信息。所以我们一般会实现 UncaughtExceptionHandler 做异常处理。
public class MyUncaughtExceptionHandler implements Thread.UncaughtExceptionHandler {
@Override
public void uncaughtException(Thread t, Throwable e) {
System.out.println("线程信息:"+t.toString());
System.out.println("报错信息:"+e.getMessage());
}
}
更多推荐
已为社区贡献3条内容
所有评论(0)