這是本文件的舊版!


Effective Java - Use checked exceptions for recoverable conditions and runtime exceptions for programming errors (ToDo)

這個Item在強調例外的使用時機,包含

  • Checked Exceptions應用在recoverable conditions
  • Unchecked(Runtime) Exception應用在programming errors

下一個問題就是怎麼定義recoverable conditions與programming errors。我分享笑談軟體工程:例外處理設計的逆襲中的觀點,與我的看法給大家參考。

  • Programming errors:
  • Recoverable conditions:

除此之外,這個Item還有提到幾個設計要注意的事情:

  • 按照慣例,Error應保留給JVM使用,用以表明程序無法繼續執行的情況。所以開發人員通常不該去Extend Error。
  • 例外本身是有著設計上的代表意義,可以在類別上定義能供給Client做進一步處理的介面。不建議Client使用例外本身的字串訊息去做例外處理,因為字串訊息說變就變,程式容易出問題。

Effective Java第三版Item 70。