Joã*_*oão 4 java programming-languages exception-handling
我正在写一些代码,我注意到异常处理中的一个模式让我思考:
try{
// do stuff... throws JMS, Create and NamingException
} catch (NamingException e) {
log1(e);
rollback();
doSomething(e)
} catch (CreateException e) {
log1(e);
rollback();
doSomething(e)
}
Run Code Online (Sandbox Code Playgroud)
JMSException将处理堆栈中的某些位置.
是不是只写:
try{
// do stuff... throws JMS, Create and NamingException
} catch Exception[NamingException, CreateException] e) {
log1(e);
rollback();
doSomething(e)
}
Run Code Online (Sandbox Code Playgroud)
而不是把它放在一个辅助方法:
try{
// do stuff... throws JMS, Create and NamingException
} catch (NamingException e) {
helper_handleError1(e)
} catch (CreateException e) {
helper_handleError1(e)
}
Run Code Online (Sandbox Code Playgroud)
请注意,我想传播原始JMSException的堆栈跟踪,并且我"不想"使用第三个catch子句创建新的JMSException :)
有什么难事吗?这是一种极端的情况,只会污染Java的语法,还是只是添加一个很酷的东西?
| 归档时间: |
|
| 查看次数: |
2006 次 |
| 最近记录: |