Java_一般的な異常と治療

1.概要

        Javaクラスライブラリの各パケットは[]例外クラスで定義されている、これらのクラスが全てですThrowableクラスのサブクラス、クラスのThrowable java.langパッケージに属し、このパッケージは自動的に各ランタイムのJavaプログラムを組み込むことになる。クラスのThrowable 2つのサブクラスがあり、エラーJVMクラスが間違っているは、IOExceptionクラスは、出力クラス入力、RuntimeExceptioランタイムクラスはクラスではあります。

一般的なエラーの種類:

算術例外カテゴリ:はArithmeticException nullポインタ例外クラス:NullPointerExceptionが

タイプキャスト例外:ClassCastExceptionが負の配列の添字例外:NegativeArrayException

クロスボーダーの異常な配列の添字:異常は、ArrayIndexOutOfBoundsExceptionのセキュリティ侵害:SecturityException

ファイルの末尾例外:EOFExceptionではファイルの例外が見つかりません:FileNotFoundExceptionを

数異常に文字列:NumberFormatExceptionが動作データベース例外:のSQLException

入力と出力の異常:IOExceptionが方法を見つけるのは異常ではありません:ないNoSuchMethodException

2、詳細

1、nullポインタ例外クラス:NullPointerExceptionが

  この例外の解釈は、簡単に言えば「nullポインタプログラムでキャッチ」されている初期化されていないオブジェクトと呼ばれるまたはオブジェクトが存在していません。このエラーは、多くの場合、ときに、パス・エラーを作成するために、このような初期化されていない写真、画像など、これらの操作の配列を呼び出し、作成された画像に表示されます。ヌルポインタ配列操作は、多くの場合、一部の学生だけで初期化一般的な間違いをプログラミングを学ぶと混同配列の配列要素を初期化し始めて発生します。アレイは、ニーズの配列、およびその要素がインスタンス化されておらず、依然として空である初期化後アレイのためのスペースを割り当てられているので、それは各要素を初期化する必要がある初期化します。
  多くの場合、JSPプログラミングで:(。Request.getParameter( "ユーザ名があれば 、out.printlnを(session.getAttribute( "記録"))")( "XXX")を等しい) ようにと。この問題を解決するには、使用の比較の前に空気中に宣告されます。 

  if (request.getParameter(“username”)!=null){ 
        if (request.getParameter(“username”).equals(“xxx”)){
            …
        }
   }

2、指定されたクラスは、java.langの:.存在しないと、ClassNotFoundException

  この例外は、もともと「指定されたクラスが存在しません」され、繰り返し、異例の説明でコンパイル問題WTKのパッケージ、メイン試験中の他の多くの開発環境プログラマJB、JBに開発されました

名前とクラスパスを心配することは、それがプログラムJBパッケージの下で行われている場合、通常はデフォルトプラスパッケージなので、WTKパスパッケージプラスの隣に注意を払うの後に行くことができますが正しいです。

3、数学の異常:java.langではArithmeticException

  この異例の解釈は、そのようなゼロは、この異常のうち、我々は注意深く見るの数に関連し、その手順を確認する必要がありますになりますこのような操作に登場したことにより、このような格差などの異常な手順として、「数学の例外」であり、

地元の学校運営、式は何か間違ったことではありません。

図4に示すように、範囲外の配列添字:.のjava.lang は、ArrayIndexOutOfBoundsException

  私は私の友人の多くは、しばしば遭遇していると信じてこの例外は、珍しい解釈は、「範囲外の配列インデックス」で、プログラムは今、アレイの動作のほとんどを持っているので、配列を呼び出すときに慎重に確認してください、自分のコールに添字見えます配列の範囲を超えて、一般的に、ディスプレイコール(即ち、直接定電流で標識された)は、このようなエラーのは容易ではないが、(すなわち、変数の添え字で表される)暗黙がある、間違っしばしばコールされていませんプログラムは、いくつかの特定の方法によって決定さで、配列の長さが定義されている、いない予告、このとき、この異常を回避するために、配列の長さをチェックアウトすることをお勧めします。

パラメータ誤差に記載の方法:.のjava.lang はIllegalArgumentException


  この異常な解釈は、「パラメータ誤差法」であり、これは負の異常に書き込まれる場合に、多くの方法でこのようなエラーのJ2MEライブラリーは、そのようなボリュームコントロール音量パラメータ法として、いくつかの場合には、別の実施例Gにつながります.setColorの3つの方法の(int型赤、int型、緑、int型青)の値は、存在する場合255以上もこの例外が表示されますので、異常は、私たちが行う必要があることが発見された場合、メソッド呼び出しを確認するために急いれますパラメータ渡しはエラーではありません。

図6は、java.langのを:.するアクセスがないIllegalAccessExceptionが

  アプリケーションがクラスを呼び出すようにすると、この異例の解釈は、「アクセスなし」ではありませんが、それは例外があるでしょう、このクラスへのアクセス権を持っていない現在の方法です。パッケージとプログラムの場合、この異常に注意を払うこと。

7、java.langで。でIncompatibleClassChangeError


  間違ったで互換性のない変更。実行されるメソッドは互換性のない変更が発生したクラス定義に依存する場合、例外がスローされます。通常、改訂された宣言でアプリケーション全体のケースを再コンパイルすることなく、直接実行するアプリケーションの特定のクラスを定義し、エラーを起こしやすいです。


8、java.langで。でInstantiationError

  エラーの例。アプリケーションがJavaのnew演算子の時間を設定して抽象クラスやインターフェイスをしようとしたときに例外がスローされます。

9、java.langで。LinkageError

  リンクエラー。エラーとそのすべてのサブクラスは、クラスは、クラスがコンパイルされた後、いくつかの他のクラスに依存し、依存クラスはすべてのクラスを再コンパイルせずにそのクラス定義を変更し、これによりエラーにつながることを示しています。


10、java.langで。StackOverflowErrorが


  スタックオーバーフローエラー。アプリケーションが深すぎる再帰階層を呼び出し、スタックオーバーフローが発生すると、このエラーがスローされます。

  列挙されていない他の多くの異常があります。しかし、資格のあるプログラマを説明するために、あなたはそれ以外の場合は、単にプログラムを変更することなく、書き込み処理に滞在、それは非常に彼らの発達に影響を与えるだろう、プログラム内の共通の問題にかなりの理解と適切な解決策を持っている必要があります。あなたは本当に理解の標準レベルは例外の1つの非常に重要な部分であるコードを説明することができます。異常の完全な説明については、APIの年で見つけることができます。私たちは、彼らがいる限り、異常はいくつかの一般的な印象を持っているとして、脳に戻ってすべてを置く必要はありませんが、あなたが実際に持っていたときに、ほぼ同じどこにある知っている、すべての後に、Javaプログラマで最も痛みを伴うが、その知識容量でありますあまりにも、私たちは毎日新しいバグや新しい問題や新しい知識が発生しますので、異常な能力をキューイングの独自の把握の一つが最も重要です。

参照:

https://www.cnblogs.com/zeyuxi/p/9046137.html

https://blog.csdn.net/little_oranges/article/details/81197267

 

 

 

おすすめ

転載: blog.csdn.net/jiahao1186/article/details/91959101