我在调用一个本身会引发异常的方法时遇到上述错误。我之前使用过相同的调用和抛出错误的方法,之前没有任何问题。如果有人能够解释发生了什么,并举例说明它应该如何运作,那将不胜感激。
//Menu choice execution
if (intMenu == 1) {
loadArray();
}
else if (intMenu == 2){
export();
}
这两个调用都在停止编译器并发出以下错误:
Error: unreported exception java.io.FileNotFoundException; must be caught or declared to be thrown
让我感到困惑的是,方法本身就是在实例化时抛出异常。
//Load method that will export the arrays
public static export() throws FileNotFoundException {
}
//Load method that will search the arrays
public static search() throws FileNotFoundException {
}
非常感谢任何帮助。
答案 0 :(得分:2)
throws FileNotFoundException
意味着此方法可能会抛出此类异常。这并不意味着它会立即抛出它(throws
与throw
不同,throws FileNotFoundException
是实际抛出异常的关键字。)
由于Java知道这些方法可以抛出这样的异常,它需要你处理它 - 要么让你自己的方法也用{{1}}声明,要么抓住它。
有关详细信息,请参阅this page,尤其是部分The Catch or Specify Requirement