■ Aグループ
~ ThrowableのサブクラスErrorのサブクラス。
まれにしか起こらず対処することは不可能、あるいは対処すべきでないもの。
・java.lang.OutOfMemoryError ・・・ メモリ不足
・java.lang.StackOverflowError ・・・ スタックオーバーフロー
■ Bグループ
~ ThrowableのサブクラスExceptionのサブクラスでCグループ以外のもの。
mainまでのどこかでtry~catchにより対処しなければならないもの。
・java.io.IOException ・・・ 入出力エラー
・java.io.FileNotFoundException ・・・ ファイルが見つからない(IOExceptionのサブクラス)
・java.lang.ClassNotFoundException ・・・ クラスが見つからない
■ Cグループ
~ ThrowableのサブクラスExceptionのサブクラスRuntimeExceptionのサブクラス。
プログラムの実行中どこでも起こりうるもので、プログラム作成者のミスによるもの。
・java.lang.ArithmeticException ・・・ 整数演算での0による除算
・java.lang.ArrayIndexOutOfBoundsException ・・・ 配列の添字の不正
・java.lang.IllegalArgumentException ・・・ 引数の値のエラー
・java.lang.NullPointerException ・・・ nullポインタへのアクセス