Java 什么';在Eclipse中通知未处理异常的配置是什么?
在eclipse中,当我使用抛出异常的方法时,如果它没有被try/catch包围,或者没有再次抛出异常,它通常会发出抱怨。但对于某些例外(例如Integer.parseInt(string))eclipse不会抱怨 如何设置eclipse以投诉所有未处理的异常Java 什么';在Eclipse中通知未处理异常的配置是什么?,java,eclipse,exception,Java,Eclipse,Exception,在eclipse中,当我使用抛出异常的方法时,如果它没有被try/catch包围,或者没有再次抛出异常,它通常会发出抱怨。但对于某些例外(例如Integer.parseInt(string))eclipse不会抱怨 如何设置eclipse以投诉所有未处理的异常 谢谢 AFAIK,Eclipse使用与Java相同的已检查异常和未检查异常列表。这是Java工作原理定义的一部分。如果Eclipse允许您覆盖这一点,我会感到惊讶 在Java中,除了RuntimeException和Error的子类之外,
谢谢 AFAIK,Eclipse使用与Java相同的已检查异常和未检查异常列表。这是Java工作原理定义的一部分。如果Eclipse允许您覆盖这一点,我会感到惊讶 在Java中,除了
RuntimeException
和Error
的子类之外,所有Throwable
都会被检查,eclipse不会“设置为投诉”异常
请参阅。此行为由java语言定义定义。 有两种类型的例外情况:
必须捕获异常,运行时异常可能会发生,但不需要try/catch块。只有在未处理选中的异常时,编译器才会抱怨。这里,Integer.parseInt(字符串)应该抛出一个numberformatexception,它是未检查的或运行时异常。因为它没有问题。s不需要声明,可以由堆栈中的任何调用方处理。在编译时评估调用者的位置是不可能的。简单的答案是不能 较长的答案是:
- 检查异常与未检查异常是Java语言的基本组成部分
- Eclipse编译器的角色不是为有效且完全可接受的Java提供编译错误或警告
- 考虑到大多数语句(理论上)都可以抛出或传播异常,例如
,NullPointerException
,ArrayIndexOutOfBoundsException
,等等,您也不希望它这样做OutOfMemoryError
NumberFormatException
是未检查的异常。。。但更好的处理方法是(例如)使用一些自定义规则运行PMD,以拾取“应该”视为已检查的异常