前のセクションで説明した実行時例外と非実行時例外に加えて、次のような多くの一般的な例外があります。
算術例外: ArithmeticException
NullPointerException: NullPointerException
クラス変換例外: ClassCastException
負の配列添字例外: NegativeArrayException
配列添字の境界外の例外: IndexOutOfBoundsException
セキュリティ原則に違反する例外: SecurityException
アクセス許可例外: IllegalAccessException
ファイルの終わりの例外: EOFException
ファイルが見つからない例外: FileNotFoundException
文字列から数値への例外: NumberFormatException
操作データベース例外: SQLException
入出力例外: IOException
メソッドが見つからない例外: NoSuchMethodException
…
このセクションでは主に次の 5 つの異常を紹介します。
Null ポインタ例外は、プログラミング時によく発生します。この例外の発生は、簡単に言えば、初期化されていないオブジェクト、または存在しないオブジェクトが呼び出されたときに発生することがよくあります。配列の操作において、プログラミングを学び始めたばかりの人がよく犯す間違いは、配列の初期化と配列要素の初期化を混同することです。
配列の初期化は必要な領域を配列に割り当てることであり、初期化された配列内の要素はインスタンス化されておらず空のままであるため、それを呼び出す場合は各要素を初期化する必要があります。
次のようなデータ型変換エラー。
文字列温度=abc;
int temp に設定すると型が異なるためエラーが報告されますが、object temp に設定した場合は object が親クラスなので問題ありません。
配列を操作するときにこの例外がよく発生します。この例外は、「配列の添字が範囲外である」ことを意味します。そのため、配列を呼び出すときは、範囲を超えた添字を呼び出しているかどうかを注意深く確認する必要があります。配列の範囲は?一般に、定数を直接呼び出す場合にはこのようなエラーが発生する可能性は低くなりますが、プログラム内で定義された配列の長さが特定のメソッドによって決定される場合には、このようなエラーが発生しやすくなります。現時点では、この例外を回避するために配列の長さを確認することをお勧めします。
この例外の説明は「アクセス権がない」です。この例外は、アプリケーションがクラスを呼び出したいときに発生しますが、現在のメソッドにはそのクラスへのアクセス権がありません。プログラム内でパッケージを使用する場合は、この例外に注意してください。
この例外は通常、ファイルの読み取りおよび書き込み時に発生します。たとえば、作成したプログラムにディスクからファイルを読み込む場合、そのファイルがハード ディスク上に存在しない場合、Java 仮想マシンはこの例外を報告します。