實作各種錯誤處理與資源管理方式。
程式設計的一個重點,就是即使發生錯誤,也要懂得如何處理錯誤並關閉資源。
這個練習要求你處理各種錯誤。由於錯誤處理與程式語言息息相關,你需要參考你正在學習的語言的測試,才能知道確切的要求。
這個練習要求你處理例外。例外是指程式執行期間發生、會打斷程式指令正常流程的事件。
在 Java 中,例外分成兩種類型:受檢例外與非受檢例外。
受檢例外是會在編譯時期接受檢查的例外。
任何可能拋出受檢例外的方法,你都必須在它的方法簽章中宣告,並且在呼叫任何可能拋出受檢例外的方法時處理或重新拋出它們。
這是因為受檢例外應該在執行時期處理,也就是說,它們是你能夠從中復原的錯誤。
當方法無法回傳任何有效結果時,經常會用到它們;例如搜尋方法找不到它正在尋找的項目時。
這是回傳 null 或錯誤碼以外的另一種選擇。受檢例外比這些替代方案更好,因為它強制方法的使用者去考慮錯誤的情況。
非受檢例外是不會在編譯時期接受檢查的例外。
對於可能拋出非受檢例外的方法,你不必在它們的方法簽章中宣告,也不必在呼叫任何可能拋出非受檢例外的方法時處理或重新拋出它們。
非受檢例外通常是由程式中的瑕疵所造成,可以透過良好的程式撰寫習慣來避免。例如: ArrayIndexOutOfBoundsException 可以藉由確保陣列索引介於 0 和陣列的長度之間來避免。