これが非常に基本的な質問である場合は申し訳ありません
私の理解では、例外をスローするメソッドがある場合、そのメソッドを使用するときはいつでもそれをキャッチ (またはスロー) する必要があります。
ただし、例外をスローする一部のメソッドでは、次のようにキャッチする必要はありません。
int num = Long.parseInt(sampleString);
誰か光を当ててもらえますか?
これが非常に基本的な質問である場合は申し訳ありません
私の理解では、例外をスローするメソッドがある場合、そのメソッドを使用するときはいつでもそれをキャッチ (またはスロー) する必要があります。
ただし、例外をスローする一部のメソッドでは、次のようにキャッチする必要はありません。
int num = Long.parseInt(sampleString);
誰か光を当ててもらえますか?
Java には、 checkedとuncheckedの 2 種類の例外があります。前者は編集する必要がありますがcatch
、後者は必要ありません。未チェックは、 、、またはそれらのサブクラスの 1 つException
を拡張するクラスです。RuntimeException
Error
Long#parseLong
NumberFormatException
which IS-A をスローしRuntimeException
ます。したがって、これは未チェックの例外であり、キャッチする必要はありません。
から拡張される例外がありますRuntimeException
。これらは非チェック例外と呼ばれ、メソッド シグネチャで宣言する必要はありません。一般に、これらは実際に問題が発生した場合のために予約されています。
Java には 2 種類の例外があります。チェックありとチェックなし。非チェック例外をキャッチする必要はありません。未チェックの例外の良い例は NullPointerException です。開発者がこの例外コードをキャッチする必要がある場合、途方もなく複雑になることがわかります。それは狂気でしょう。未チェックの例外をparseInt
スローする例外。
これらは のサブクラスですRuntimeException
。RuntimeException
s とそのサブクラスをキャッチする必要はありません。それらは非チェック例外と呼ばれます。