Java例外処理でのスローとスローの違いを例で明確に説明できる人はいますか? 私はググってみましたが、結論に達することができませんでした。助けてください
71062 次
3 に答える
47
throws
句は例外を宣言するために使用され、throw
キーワードは明示的に例外をスローするために使用されます。構文的に見る
throw
と、その後にインスタンス変数throws
が続き、その後に例外クラス名が続きます。キーワード
throw
はメソッド本体内で例外を呼び出すためにthrows
使用され、節はメソッド宣言 (シグネチャ) で使用されます。
例えば
投げる
throw new Exception("You have some exception")
throw new IOException("Connection failed!!")
スロー
public int myMethod() throws IOException, ArithmeticException, NullPointerException {}
で複数の例外を宣言することはできません
throw
。public void method() throws IOException,SQLException など、複数の例外を宣言できます。throw
チェックされた例外は、特定の例外をスローするために明示的に使用されているという理由だけで伝播できません。チェックされた例外は で伝播できますthrows
。
例外の伝播:例外は、キャッチされるまで、メソッドからメソッドへとコール スタックを上って伝播します。したがって、a() が b() を呼び出し、b() が c() を呼び出し、c() が d() を呼び出し、d() が例外をスローした場合、これらのメソッドのいずれかがキャッチしない限り、例外は d から c、b、a に伝播します。例外。 例外伝播とは何ですか?
于 2014-09-02T07:08:01.393 に答える