2016-02-29 108 views
-1

我想火test()方法(使用從JAudioTagger庫元素)點擊一個JavaFX按鈕時:爲什麼我得到這個未處理的異常錯誤?

search.setOnAction(new EventHandler<ActionEvent>() { 
    public void handle(ActionEvent e) { 
     test(); 
    } 
}); 

這裏是test()方法:

public void test() throws CannotReadException, IOException, TagException, ReadOnlyFileException, InvalidAudioFrameException { 
    ... 
} 

出於某種原因Eclipse強調了在第一位代碼中對test()的引用,並指出

Unhandled exception type InvalidAudioFrameException 

即使t他的例外已經在test()方法中處理過了?我不明白。

+1

我不知道爲什麼人們回答了一個問題,這個問題以前顯然被問過數十億次。 –

+0

[選擇重複問題](https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=unhandled+exception+type+java+site:http :%2F%2Fstackoverflow.com%2F) –

回答

0

您的測試方法「聲明」會引發異常。 如果您在throws子句中聲明它,方法的調用方必須準備好捕獲它或將其添加到它的throws子句中。

+0

我試着在handle()方法的子句中添加必要的異常,但是它表示異常與EventHandler中的throws子句不兼容 .handle(ActionEvent) – user6000020

+0

@ user6000020 :然後在try catch塊中處理。你只需發佈這個問題,上面的評論就是告訴我們你沒有閱讀關於如何處理異常的教程的必要步驟。請儘快解決。 –

相關問題