显示抛出异常的所有函数

时间:2013-02-11 23:11:19

标签: java eclipse exception try-catch

我正在研究一个Java程序,我想知道Eclipse中是否有一些工具可以指出所有抛出异常的方法。我只是想确保我得到了所有这些。

感谢您的帮助,

4 个答案:

答案 0 :(得分:1)

必须捕获

检查异常,以便Eclipse告诉您有关它们的信息。另一方面,未经检查的异常(又名RuntimeException)“不应该发生”,它大部分时间都是编程问题。因此,Java不需要捕获它们,AFAIK Eclipse不会显示任何提示来告诉您潜在的问题(可能更好的可见性)。

您可以阅读Unchecked Exceptions — The Controversy这篇文章,其中Oracle提供了关于未经检查的例外的精神状态。

如果您想自己构建一些内容,请查看RuntimeExceptionDirect Known Subclasses,它将帮助您识别可以在不被捕获的情况下抛出的异常。

答案 1 :(得分:0)

首先,搜索关键字。 'throw'关键字将在代码中检测错误条件或无法处理某些异常,而'throws'将是声明它们传递某些异常的方法。

Eclipse可能无法找到所有抛出异常的方法,因为运行时异常不需要在'throws'子句中声明,并且可能被库调用抛出,在这种情况下你找不到'throw'任

答案 2 :(得分:0)

如果您忘记捕获已检查异常(扩展Exception),则代码将无法编译。如果您忘记捕获未经检查的异常(扩展RuntimeException),这通常是更好的方法。 Read Up

答案 3 :(得分:0)

如果您的程序在main方法(初始执行上下文)中捕获Exception,您将被告知是否抛出了一些异常但未处理。

public static void main(String[] args) {
    try {
       // .... anything you want to do
    } catch(Exception e) {
       e.printStackTrace(); // useful to visualize the stack trace and ping point others places to catch exceptions
    } catch(Throwable t) {
       // if you want to check for errors also, but generally there isn't much to do in this case
    }
}

旁注,由于Java实现了checked(Exception)和未经检查的RuntimeException异常的概念,因此必须处理checked,这会通知正确的程序应该尝试/ catch / finally的异常。但是未经检查通知情况通常表明存在错误,良好做法和防御性编程应该避免,因此您不必处理它。