Java setDefaultUncaughtExceptionHandler()方法
线程类的
setDefaultUncaughtExceptionHandler()方法设置当线程由于未捕获而突然终止时调用的默认处理程序异常,并且没有为该线程定义其他处理程序。
语法
public static void setDefaultUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh)
参数
eh : 这是用作默认未捕获异常处理程序的对象。
返回
此方法不返回任何值。
异常
SecurityException : 如果存在安全管理器并且拒绝RuntimePermission,则抛出此异常。
示例
public class JavaSetDefaultExceptioneExp implements Runnable
{
public void run()
{
throw new RuntimeException();
}
public static void main(String[] args)
{
Thread thread = new Thread(new JavaSetDefaultExceptioneExp());
thread.setDefaultUncaughtExceptionHandler(new Thread.
UncaughtExceptionHandler()
{
public void uncaughtException(Thread thread, Throwable e)
{
System.out.println("Exception caught: " + e);
}
}
);
// call run() function
thread.start();
}
}
输出:
Exception caught: java.lang.RuntimeException