如何解决如果函数已经保证返回或抛出,为什么我必须指定返回值?
我不必在保证抛出异常的函数中指定返回值,因为该路径已死:
// Works fine!
public boolean a() {
throw new RuntimeException();
}
我不明白为什么我不能在这里做同样的事情:
// Error: This method must return a result of type boolean
public boolean a() {
try {
return mayReturnorThrow();
}
catch (Exception ex) {
new RuntimeException(ex);
}
}
我在这里遗漏了什么?
解决方法
new RuntimeException(ex);
只是抛出一个异常然后什么都不做——这是一个无用的无操作。你想扔掉它:
throw new RuntimeException(ex);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。