Javaでよく見られる異常タイプと原因分析(下)


ここでは、いくつかの一般的な異常を紹介し、原因を分析します.
  • ArrayIndexOutOfBoundsException異常;
  • UnsupportedClassVersionErrorエラー;
  • NumberFormatException異常;
  • スタックオーバーフローとメモリオーバーフロー.

  • 3.ArrayIndexOutOfBoundsException異常
    これは非常に一般的な異常で、名前から見ると配列の下付きスケーリングエラーです.解決策は、下付きスケーリングの理由を表示することです.次はエラーの例です.
     Exception in thread "main"java.lang.ArrayIndexOutOfBoundsException:2
     at test4.State.nextStates(State.java93)
     at test4.State.main(State.java:478)

    これらのヒント情報から,1)エラーが93行2)で発生した場合,下付き文字の値が2であること,次に下付き文字の値が2でない理由を分析して問題を解決する.
    4. UnsupportedClassVersionError
    エラーメッセージは次のとおりです.
     java.lang.UnsupportedClassVersionError:Bad version number in.class file

    エラーの原因:JavaのコンパイルとJavaの実行で使用されるJavaのバージョンが一致しません.たとえば,コンパイル時に使用するJavaバージョンは6,実行時に使用するJavaバージョンは5である.ソリューション:実行環境のJavaバージョンを変更するか、コンパイル環境のJavaバージョンを変更して、両者が一致するようにします.
    5.Number FormatException異常
    数値変換異常は、数値を表す文字列を数値タイプに変換すると、パラメータである文字列が数値で構成されていないため、この異常を報告する可能性があります.
    6.スタックオーバーフローとメモリオーバーフロー
    再帰呼び出し時にスタックオーバーフローが発生する可能性があります.再帰呼び出し時に呼び出しの状態を保存する必要があるため、再帰の深さがある程度に達するとスタックオーバーフローの異常が発生します.仮想マシンのメモリが小さく、プログラムのメモリ要件が高い場合は、メモリオーバーフローエラーが発生する可能性があります.
    よくある例外クラス
    異常
    説明
    RuntimeException
    Java.langパケット内の多数の異常のベースクラス
    ArithmeticException
    0で割るなどの算術エラー
    IllegalArgumentException
    メソッド不正なパラメータの受信
    SecurityException
    セキュリティ違反を試みる
    ClassNotFoundException
    要求されたクラスをロードできません
    AWTException
    AWTの例外
    IOException
    I/O異常のルートクラス
    FileNotFoundException
    ファイルが見つかりません
    EOFException
    ファイルの終了