有一个类 X。X 类method()
中的一个方法 throws SomeException
。
我想知道哪种处理异常的方法更好——更有效。如果它是围绕try-block方法抛出异常和所有依赖关系或将依赖关系保持在try-block之外,但在失败后从方法返回。
1.
public void test() {
X x = new X();
try {
T temp = tx.method();
temp.doWhatever();
}
catch(SomeException e) { handleException(e); }
}
或者
2.
public void test() {
X x = new X();
T temp = null;
try {
temp = tx.method();
}
catch(SomeException e) {
handleException(e);
return;
}
temp.doWhatever();
}
编辑:(在您的注释之后)
更重要的是,我这样理解我的代码:
1.
tx.method()
会抛出一个异常,所以接下来要执行的是catch
- 阻塞。temp
仍然没有关系,null
因为程序跳过了temp.doWhatever();
行并且不会有NullPointerException
.
2.这里我使用return
指令是因为我不想执行temp.doWhatever()
因为temp
是null