gpt4 book ai didi

java - 如何知道用 Try/Catch block 捕获什么

转载 作者:太空宇宙 更新时间:2023-11-04 14:08:01 24 4
gpt4 key购买 nike

我只是尝试使用 BufferedReader 读取文本文件,并且使用一个 try-catch block 来捕获任何 IOExceptions。我认为确实如此,甚至添加了一个 FileNotFoundException 以防出现问题。但我仍然得到:

错误:未报告异常java.lang.Exception;必须被捕获或宣布被抛出

我不明白我没有捕获哪一部分。这是我的代码:

public Grade load(){

Grade newList = new Grade();
try {
int year;
String newLine;

BufferedReader inFile = new BufferedReader(new FileReader(inputName));

while((newLine = inFile.readLine())!= null){

year = Integer.parseInt(inFile.readLine());
newList.addGrade(new Grade(year));
}

inFile.close();
}//try

catch (FileNotFoundException e) {
System.out.println("Failed to copy the file: "+e.getMessage());}
catch(IOException e){
System.out.println("Failed to copy the file: "+e.getMessage());}

return newList;
}//load

最佳答案

我假设 Grade.addGrade 方法或 Grade 构造函数被声明为抛出 java.lang.Exception

使用 Integer.parse 方法时捕获 java.lang.NumberFormatException 也是一个很好的做法。

关于java - 如何知道用 Try/Catch block 捕获什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28653733/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com