Eclipse不再检测到丢失的try / catch?

时间:2014-01-21 17:06:57

标签: java eclipse try-catch compiler-warnings

在此代码中

String a = "notANumber";
Integer b = Integer.parseInt(a);

由于parseInt会引发NumberFormatException例外,因此必须使用try / catch 在我之前的Eclipse版本中,我曾经得到一个警告,告诉我需要一个try / catch但是我无法弄清楚如何在我当前版本的Eclipse上启用它,这是

Eclipse Java EE IDE for Web Developers.
Version: Kepler Service Release 1

2 个答案:

答案 0 :(得分:10)

NumberFormatExceptionRuntimeException

您没有 try / catch用于运行时异常。

来自the javadoc of RuntimeException

  

RuntimeException是可以使用的那些异常的超类   在Java虚拟机的正常操作期间抛出。   RuntimeException及其子类是未经检查的异常。

     

未经检查的异常不需要在方法中声明   构造函数的throws子句,如果它们可以被执行抛出   方法或构造函数并在方法或方法之外传播   构造函数边界。

我严重怀疑任何版本的Eclipse都需要try/catch代码才能显示。你必须与另一个调用混淆(可能是一个声明异常的包装器,未检查异常的事实并不意味着你不应该,有时,明确地捕获它,实际上这个可能最常被明确捕获)

答案 1 :(得分:1)

请参阅docs

enter image description here

这是运行时异常 - It doesn't have to be checked,因此编译器不会检查它。

有关更多有价值的信息,请参阅JLS - 11.1.1. The Kinds of Exceptions

  

未经检查的异常类是运行时异常类和   错误类。