假设您的程序将进行各种数学计算,并希望了解可能捕获的可用异常以查看是否有适用的异常。
或者,程序将执行大量文件i / o和其他操作,并且您希望捕获特定异常,而不是简单地捕获异常。
也许您可能想知道一个应用程序是否适用于正在编码的场景。
在生成执行特定活动的代码时,建议采用哪种方法研究可捕获的异常?
答案 0 :(得分:2)
使用像Intellij或Eclipse这样的IDE可以让你知道你使用的库代码抛出的大多数异常,具体取决于它的javadoc(如FileNotFoundException
)和大多数时间,这些是您应该担心的例外情况。
除以零之外的其他异常,空指针异常肯定取决于您编写的代码。例如,如果从其他类获取对象,则可能需要在对其执行任何操作之前检查它是否为null。同样地,如果你要划分某些东西,比如K/X
,你应该知道X是否会变为0。
答案 1 :(得分:0)
推荐的方法是研究该方法的javadoc 希望该代码的软件作者以推荐的方式编写javadoc,同时列出方法抛出的Runtime Exceptions。
答案 2 :(得分:0)
您通常可以在文档中找到要使用的方法的此信息。它会告诉你它在什么情况下会抛出什么异常。没有一般目的"找到所有例外"技术。这可能是一件好事,因为如果您不知道如何或为何创建例外,您可能不太了解处理它。
答案 3 :(得分:0)
您可以跟踪要调用的代码的来源,以查找所有特定的异常。这个问题是因为它可能在不同版本的软件之间发生变化所需的时间非常长。
通常,您可以信任Javadoc以获得广泛检查的异常,但这通常不会告诉您所有特定异常或所有RuntimeExceptions。 (包括所有未来的例外)
注意:您可能希望根据消息和异常类型采取不同的操作。
出于这个原因,我建议你专注于你处理不同的特定异常,并捕获所有IOException或类似的意外异常,这些异常本质上意味着你不知道如何处理它们。
答案 4 :(得分:0)
有两种类型的例外,已选中和未选中。如果您不处理已检查的异常,则会出现构建失败。如果使用任何IDE,则可以识别已检查的异常。但是未经检查的异常有点棘手,您可能需要参考API文档来了解它们是什么,因为除非它被抛出,否则您可能不知道可能发生异常。有些IDE会根据您的代码为您提供提示,例如类转换,空检查。