[英]In Main function, after a try block throws an exception how can I make it keep on execute the next try block
在Main函数中,try_block引发异常后,该函数应被中断。 我的问题是如何使它继续执行到下一个try_block。 下面我举一个例子:
public static void main(String [] s){
ABC aBC = new ABC();
try {
aBC.execute();
} catch (Exception e) {
_log.error(ErrorCodeEnum.ERROR,
"XXXXXXX!!! in " + new Date(),e);
}
BCD bCD = new BCD();
try {
bCD.execute();
} catch (Exception e) {
_log.error(ErrorCodeEnum.ERROR,
"YYYYYYYYYYY!!! in " + new Date(),e);
}
}
该代码应按原样运行-即,如果第一个块引发并捕获到异常,则第二个块仍应执行。
但是,如果您确实想捕获所有内容,则可能要考虑捕获Throwable
而不是Exception
。 特别是, java.lang.Error不是Exception的子类,而是Throwable的子类。
可以肯定的是,可以将要执行的语句包装在finally
块中,如下所示:
ABC aBC = new ABC();
try
{
aBC.execute();
}
catch (Exception e)
{
_log.error(ErrorCodeEnum.ERROR, "XXXXXXX!!! in " + new Date(), e);
}
finally
{
BCD bCD = new BCD();
try
{
bCD.execute();
}
catch (Exception e)
{
_log.error(ErrorCodeEnum.ERROR, "YYYYYYYYYYY!!! in " + new Date(), e);
}
}
无论外部try
块中是否发生异常,都将执行finally
块中的语句。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.