如果我有方法:
public static boolean getA() throws Exception{
try{
throw new Exception();
}finally
{
}
}
无需返回声明。而且,如果我们尝试在末尾添加return语句,则会产生“ unreachable statement ”错误。
为什么会这样呢?确定程序不会从块中出来,并且会引发异常吗?
此外,如果我们添加一个catch块而不是finally块,那么它要求在其中存在return语句。
因为您已经指定了throw语句,并且方法定义中没有其他内容。这就是为什么。我想就是这么简单。
return语句将不可访问,因为它将与所有情况无关地引发异常。
捕获将需要return语句,因为您现在正在显式处理异常,因此它希望您按照方法定义中的声明返回。
希望您知道,您可以同时保持接球和最后挡球。因为它们服务于自己的不同目的。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句