0
我找不到什麼是錯在這裏我的代碼是Java錯誤:未報告的異常IOException異常必須被捕獲或者聲明拋出
public class Library{
FileReader fr = new FileReader("D:\\Users\\Adi\\Documents\\NetBeansProjects\\Hw 7Jan-13Jan\\Date.txt");
BufferedReader br = new BufferedReader(fr);
public void add(Publication p){
if(counter < publication.length){
publication[counter++]=p;
}
}
public boolean remove(int id){
Publication p=null;
for(int i=0;i<counter;i++)
if(publication[i].getId()==id){
p=publication[i];
for(int j=0;j<counter-1;j++)
publication[j]=publication[j+1];
publication[counter-1]=null;
counter--;
return true;
}
return false;}
}
我試着用try{}
catch{}
,但後來我其他錯誤:class,interface or enum expected
任何幫助表示讚賞感謝
PS:我是新來的這IOException異常並嘗試{} catch {} :)
看看你正在使用的'FileReader'構造函數 - 它聲明它可以拋出'IOException'。你如何期待這種傳播?您目前對檢查的異常瞭解多少? (不清楚爲什麼你有'fr'和'br'這些字段,因爲你不在別處使用它們,請注意你......) –
你的代碼的某些方法會拋出檢查的異常「IOException」 。這個異常必須通過方法頭中的''拋出IOException''傳遞給調用者,或者被try和catch捕獲。你需要像這樣''try {...} catch(IOException e){...}顯式捕獲一個IOException異常'' –
你是否在一個try-catch塊中包裝了'FileReader'和'BufferedReader'實例 –