Kev*_*oyd 0 java unhandled-exception
在Java程序中,我目前在程序中的某个点获得"Unhandled Exception",我似乎无法确定生成它的位置.
由于程序包含处理发送和接收的无线数据字节的流,因此调试代码也很困难.我似乎无法用调试器模拟它.
我应该采取什么策略来定位异常?
jit*_*ter 11
实现Thread.UncaughtExceptionHandler接口并使用setDefaultUncaughtExceptionHandler()它来设置它.
示例程序礼貌.如果你使用多个线程,你也可以在你怀疑是罪魁祸首的线程上设置处理程序.
public class Test {
public static void main(String args[]) {
new Test();
}
public Test() {
Thread.setDefaultUncaughtExceptionHandler(new MyUncaughtExceptionHandler());
// or if a default handler is set you can also use setUncaughtExceptionHandler
// check the javadocs for the specifics
throw new RuntimeException ("You can't get me or can you?");
}
class MyUncaughtExceptionHandler implements Thread.UncaughtExceptionHandler {
public void uncaughtException(Thread t, Throwable e) {
System.err.println ("Uncaught exception by " + t + " caught:");
e.printStackTrace();
}
}
}
Run Code Online (Sandbox Code Playgroud)