1.異常
1.1のThrowable类:
-
Throwableクラスは、すべての例外(例外)とエラー(エラー)スーパークラスです。
-
Throwableクラスは、二つのサブカテゴリー、すなわち例外やエラーがあります。
例外:例外発生したプログラムが実行されている、それは扱うことができます。
エラー:JVMが間違っているが、プログラムが実行されていないこの時間は、処理できない、唯一のようなエラーを回避しようとすることができます。 -
スロー可能なクラスの一般的な方法:
スロー可能():引数なしでコンストラクタ、記憶異常情報と誤差がヌルです。
Throwableを(文字列のメッセージ):建設パラメータ、エラーメッセージとメッセージの異常なストレージがあります。
ストリングのgetMessageは():現在オブジェクトに格納されたエラーまたは例外Throwableクラス情報を取得します。
文字列のtoString():例外エラーまたは現在の簡単な記述を返します。
空printStakeTrace():エラーまたは例外の原因と結果を表示します。
1.2あなたが例外を処理したくないのはなぜ例外は?何ですか?
- 例外(例外)は、命令のプログラムは、間に中断されたプログラムの実行につながる可能性があります
- 例外が発生した後、あなたがプログラムをしたい場合は、プログラムがまだ正常に完了することができ、その後、我々は異常に対処する必要があります
1.3珍しい処理形式:
try {
//可能发生异常的语句
} catch(异常类型 对应异常类型的对象) {
//发生对应异常后的异常处理操作
} finally {
//finally代码块内的代码,不论是否出现异常,都会执行
}
1.4例外処理
- 異常は、JVMによって自動的に、それを生じるプログラムは、例外のタイプに応じた場合、クラスのオブジェクトのインスタンスは、例外に対応します
- 任意の例外処理の動作を持っていないこの時間プログラムは、その後、JVM例外のデフォルトのハンドラ、およびJVMのアプローチは、例外情報を印刷することで、デフォルトは、割り込みプログラムの実行になります。このクラスのオブジェクトをインスタンス化した場合
- プログラムは例外処理メカニズムの間に存在する場合は、例えば、のtry-catchステートメントが、それは例外クラスは、try文によって生成されたオブジェクトをキャッチします
- マッチングが成功した場合、それに対応するキャッチが処理され、一致が成功しない場合は、キャプチャした後、例外クラスオブジェクト、マッチしようとした後、各catchステートメントで、シーケンスは、任意のキャッチなし、キャッチの背面に一致するように続けてマッチが成功すると、これはJVMのデフォルトの処理に、時間となります
- 該当するキャッチマッチがされていない例外に対処することができていない、がある場合は、この時点で、最終的には実行を完了した後、残りのコードが、この時点で継続されます珍しくない場合にかかわらず、文の最後に異常があるかどうかの、実行は、戻ってきますこれは、実行前の文最後になりますが、実行後に最終的には、JVMのデフォルトハンドラ、例外情報出力、および割り込みプログラムの実行に転送されます
キャッチ例外の1.5まとめ
- 異常は、コードブロックの後に他のコードが実行されない、開始位置からtryブロックで発生します
- 複数のコードブロックが異常を有していてもよく、複数のcatchブロックは、異なるカテゴリを処理するために使用することができます
- 例外トラップハンドラの終了後に実行し続けることができます
1.6例外がスローされます
キーワードはスロー:
- キーワードは、主に方法の定義に使用されるスローし、この方法は、異常処理は、処理時に呼び出されることを示していません
- ユーザーレベルの呼び出しでキーワード修正方法をスローし、必ず必須のプロセスである例外処理の動作を、取り扱い、使用例外に、あなたが使用できることキーワードは、メインメソッドでスローされた例外をスローし、その差は、ありますこの時間はデフォルトのJVMに対処するために、あること、表現アップスローされます
キーワードを投げます:
- すべての例外は、JVMの操作により自動的にインスタンス化される前に、主にメソッド内で使用されているキーワードを投げる、キーワードthorw使用あなたが望む例外クラスのオブジェクトを投げるのイニシアチブを取ることができます
約1.7のRuntimeException
- 明らかにJavaで定義され、例外RuntimeExceptionタイプのために対処するための選択肢を持つことができ、処理されていない場合、デフォルトのJVMへの処理
- 共通のRuntimeException例外:
- NumberFormatExceptionが
- ClassCastExceptionが発生
- NullPointException
- ArithmeticException
- ArraysIndexOutOfBoundsException
例外とのRuntimeExceptionの違いを教えてください:
1.RuntimeExceptionはExceptionのサブクラスである
2.必須の例外は、例外が定義されて処理され、JVMを扱うデフォルトに扱われていない場合は定義されたのRuntimeExceptionの例外処理は、選択することができ