是否可以制作类似的东西?:
try {
...
} catch (exception){
return; // this is most important thing here. In catch block only "return"
}
我可以用这种方式处理异常 - 只使用“return;”吗? 它工作正常,但我想知道它是否正确?
答案 0 :(得分:3)
这样你忽略了Exception
,真的你想要的吗?这一切都取决于你的背景 - 这样做可能是安全的(我怀疑它,但嘿,这是你的代码)。通常,当一些异常发生时 - 你应该做出反应,而不仅仅是return
,而是记录,默认(很少是一个好的选择),重试等等。
答案 1 :(得分:1)
是的,这实际上是一个有效的用例。在catch块中返回有许多正当理由,其中一个原因是返回默认值:
try {
return service.getData();
} catch (SocketTimeoutException ex) {
logTimeout(ex);
return getCachedData();
}
答案 2 :(得分:1)
这是正确的语法,但根据java编码标准,我们不能吞下异常而是在catch块中处理它们或用适当的消息重新抛出它
答案 3 :(得分:0)
如果你做这样的事情
public void someMethod(){
try{
...
} catch (Exception e) {
return;
}
}
你失去了你的例外。这是一个不好的做法,因为如果出现问题 - 你甚至无法理解出了什么问题。 更好的方式