当一个线程由于未捕获异常而退出时,JVM会把这个事件报告给应用程序提供的UncaughtExceptionHandler异常处理器。如果没有提供任何异常处理器,那么默认的行为是将栈追踪信息输出到System.err.
例子
public static void main(String[] args) {
new Thread(new Runnable() {
public void run() {
int i = 1 / 0;
System.out.println("dddddd");
}
}).start();
上面代码执行时将抛出零除异常,我并没有将它捕获,那么JVM如何处理的呢?