この例外をキャッチしようとすると、「例外LinkedListExceptionは決して対応するtry文の本体でスローされません」というコンパイルエラーメッセージが表示されます。これは何を意味するのでしょうか?Javaでカスタム例外を宣言する
-3
A
答えて
1
try {
LList.Node someNode = list.nextNode(node);
// We should not get here.
assertTrue(false);
}
catch (LinkedListException ex) {
// If we get here we are happy as it throw the exception
}
例外はRuntimeExceptionでない場合、それは(メソッドシグネチャthrows
句で)宣言されなければなりません。そのため、コンパイラは、あなたが呼び出すコードがこの例外をスローするかどうかをチェックし、catch
を追加することはできません。これらは実行されません。
この例外がそのコードのどこかにスローされる可能性がある場合は、キャッチして無視するか、途中で別の例外にラップする必要があります。または、間違ったバージョンのクラスに対してコンパイルしています。
1
throw
キーワードを使用してコードのどこかに例外をスローする必要があります。例えば
、
ArithmeticException
どこ深いコード内のいくつかをスローされます。あなたは
void someMethod() throws Exception
{
throw new Exception();
}
のようなバブルアップこのメソッドを呼び出した人は通常我々のように、try
でそれを処理する必要がcatch
、finally
することができます(ただ、人がArithmeticException
を書くことについて考えたかのように)を処理したくない場合あなたの例外をスローしたい場合は、throw new LinkedListException()
を追加してください。ここで例外を発生させたい場所をtryブロックに入れます。
関連する問題
- 1. Javaのメソッド宣言の例外
- 2. メソッド宣言の例外。 JAXB
- 3. Javaの例外処理 - カスタム例外
- 4. カスタム例外 - Java Webサービス
- 5. クラスレベルのJavaカスタム例外
- 6. RxJavaまたはReactorの例外宣言
- 7. .NET標準でC#例外を宣言する
- 8. PL/SQLパッケージでグローバル例外を宣言する
- 9. この例外の例外とサブクラスをスローするメソッドの宣言
- 10. Javaで外部ライブラリを宣言する - コンパイルエラー
- 11. インタフェース定義時に例外を宣言するか、宣言するべきではありませんか?
- 12. 例外クラスなしでJavaでカスタム例外を作成しますか?
- 13. 例えば宣言
- 14. Javaジェネリックメソッド宣言
- 15. Javaリストメソッド宣言?
- 16. Java ArrayList宣言
- 17. メソッドのカスタム属性宣言
- 18. XNA 4.0カスタム頂点宣言
- 19. RopesをJavaで宣言するには?
- 20. Javaでイテレータを宣言する
- 21. actionPerformed javaで整数を宣言する
- 22. JavaでLinkedListを宣言する
- 23. javaペイントコンポーネントの外に形状とサイズを宣言するペイントコンポーネント
- 24. カスタム例外をスローする
- 25. JNIで宣言されていない例外
- 26. Java言語のヌルポインター例外エラー
- 27. Javaでのインスタンスフィールド宣言
- 28. Javaでの宣言的プログラミング
- 29. インターフェイスメソッドで常に「例外をスローする」と宣言しますか?
- 30. Int Def宣言Java
これは、 'LinkedListException'をスローするコードを呼び出さなかったことを意味します。これは、チェック例外を想定しています。 – Rogue
これは 'list.nextNode(node)'がその例外をスローしないことを意味します。 –
list.nextNode(node)の宣言に「LinkedListExceptionがスローされましたか? –