Ben*_*enj 1 java exception-handling
好 !谢谢你找到了答案.我接受了副本,因为它正是我想要的,并且很好地解释了.感谢大家的回答:)
有没有人对如何在Java中创建自定义异常处理程序有任何建议或想法?
我的意思是修改代码未捕获 的标准Java异常处理方法Exceptions,Errors并且更通用Throwable.
PHP的方法是定义一个自定义的异常处理程序,但似乎在Java中没有这种方法.
我将实现的目标是在Java错误处理过程中插入自定义进程:
Uncatched Throwable - >由JVM处理"我的代码外" - >我的自定义进程 - >如果需要,恢复JVM标准异常处理
感谢所有的想法或建议!
有没有办法将此处理程序生成所有线程而不在每个线程中明确声明?我在这里为这个话题开了一个新问题.
只要介意你,Java是multithreaded,并且exception与他们有关系threads.如果Exception没有被捕,你可以使用thread.setUncaughtExceptionHandler.
thread.setUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread t, Throwable e) {
System.out.println("catching exception "+e.getMessage());
}
});
Run Code Online (Sandbox Code Playgroud)
或者您可以使用该AOP方法并定义一个advice来处理异常.看看AspectJ.
注意:你需要在这里小心,因为你最终可能会吞下异常,并且很难搞清楚bug的来源