【发布时间】:2023-04-04 15:37:01
【问题描述】:
我有如下代码块。在 elseif 或 else 语句中抛出异常后,我需要停止,如果 try catch 进入 elseif 或 else 语句,则不返回最终的 return 语句。
【问题讨论】:
-
不要捕获和抛出
Exception(这最终会过于通用),而是对特定错误使用特定异常。创建一个新的异常类就像扩展Exception或RuntimeException一样简单,并提供一个带有super的构造函数。 -
"在try catch之后不返回最后的return语句"那为什么你的return语句在catch块之后呢?
-
这个问题不是很清楚。两个 else 子句都抛出异常,然后都将被 catch 块捕获,并抛出一个新的异常。代码中还有其他逻辑错误,但如果有任何一个 else 子句,return 语句似乎永远不会执行。
-
因为如果我将返回值放在 if 语句@njzk2 中,它会引发错误“缺少返回语句”@njzk2
-
@crig 我删除了 throw in catch 块。现在我该如何解决这个问题?并且 P.S 如果返回到任何一个 else 语句中,我不希望执行返回,这就是我这样写它的原因
标签: java if-statement try-catch