第20回 例外クラス

Error

プログラマにはどうしようもないような例外がこれにあたる。

Exception

プログラマが対処可能な例外。
メソッドが返す例外を明示的に書かなければいけない。


例外処理をしない、もしくはメソッドが例外を返すことを明示しないとコンパイラに怒られるのはこれのみ。
だが、RuntimeExceptionには java.lang.NullPointerExceptionなどの
有名な実行時例外が存在するため、Exceptionで捕捉しておくとハッピーになれる場合もある。

RuntimeException

プログラマが対処可能な例外。
メソッドが返す例外は書く必要がない。
Exceptionを継承しているのでExceptionをcatchしていれば捕捉可能。
メソッドがこの例外を返すことを明示的に書かなくてよいので、
Exceptionの派生くらすをRuntimeExceptionでラップして上に投げてしまい、
一番上で例外処理をまとめて行うという設計思想もまれにある。