我想知道下面的代码根据 Java 标准是否正确。 return语句可以放在try块之后吗?或者将 return 语句放在finally 块中总是好的。请帮我解决这个问题
public int method()
{
try{
//code
return 1;
}
catch(Exception e){
return 0;
}
finally{
}
}
将
return
放入 try
甚至放入 catch
es 中绝对没问题:做最清晰的事情。但请注意不要丢弃太多异常,尤其是 java.lang.Throwable
,因为这样做可能会干扰 JVM 的工作。
请注意,如果
return
块中有一个 finally
,则将计算另一个
return
中的表达式still,但结果将被丢弃,并返回
finally
块中的返回值返回给呼叫者。因此,不鼓励将
return
值放入
finally
块中。
但是,我们可以将 return 语句放在 try/catch 块中。那绝对没问题!
但是,如果你在finally块中放入return语句,那么Java将认为它是最终返回值。
希望这有帮助!