IntelliJ IDEA:删除异常会破坏源代码。仍要继续吗?

时间:2019-03-20 02:12:30

标签: java exception intellij-idea refactoring

我有一个抛出不推荐使用的异常的方法,我已经删除了所有抛出此异常的情况。我尝试使用IntelliJ IDEA的“从抛出列表中删除”重构操作将其删除,并得到以下错误,

Refactoring Error dialog

这是什么意思?

我在DuckDuckGo和Google上进行了搜索,但唯一可以找到的相关结果是IntelliJ IDEA's source code

1 个答案:

答案 0 :(得分:0)

我不知道您正在使用的库或bar的实现方式。但是,这似乎是所谓的检查异常

已检查的异常不能忽略,您必须以某种方式处理引发异常的情况。可以通过捕获它或将它委托给方法的调用者来完成。在您当前的实现中,后一种是通过将异常类型添加到ConditionParseException的列表中来完成的。

如果要从throws声明中删除异常,则必须使用throws块来处理它,例如:

try-catch

另一种可能性是将其设置为未经检查的异常。为此,处理异常不是强制性的。有关这两种异常的详细说明,请参考this question

TL; DR

但是,如果要完全摆脱try { } catch (ConditionParseException ex) { } 类型(因为不推荐使用),则必须:

  • 在“无法执行重构”对话框中单击“是”
  • 删除所有其他ConditionParseException的使用。 (例如ConditionParseException块和catch语句)
  • 删除throw new ConditionParseException Java文件。