0

これが非常に基本的な質問である場合は申し訳ありません

私の理解では、例外をスローするメソッドがある場合、そのメソッドを使用するときはいつでもそれをキャッチ (またはスロー) する必要があります。

ただし、例外をスローする一部のメソッドでは、次のようにキャッチする必要はありません。

int num = Long.parseInt(sampleString);

誰か光を当ててもらえますか?

4

4 に答える 4

2

Java には、 checkeduncheckedの 2 種類の例外があります。前者は編集する必要がありますがcatch、後者は必要ありません。未チェックは、 、、またはそれらのサブクラスの 1 つExceptionを拡張するクラスです。RuntimeExceptionError

Long#parseLongNumberFormatExceptionwhich IS-A をスローしRuntimeExceptionます。したがって、これは未チェックの例外であり、キャッチする必要はありません。

参考文献:

于 2012-09-25T23:35:02.903 に答える
1

から拡張される例外がありますRuntimeException。これらは非チェック例外と呼ばれ、メソッド シグネチャで宣言する必要はありません。一般に、これらは実際に問題が発生した場合のために予約されてます。

于 2012-09-25T23:34:55.573 に答える
0

Java には 2 種類の例外があります。チェックありとチェックなし。非チェック例外をキャッチする必要はありません。未チェックの例外の良い例は NullPointerException です。開発者がこの例外コードをキャッチする必要がある場合、途方もなく複雑になることがわかります。それは狂気でしょう。未チェックの例外をparseIntスローする例外。

于 2012-09-25T23:33:53.590 に答える
0

これらは のサブクラスですRuntimeExceptionRuntimeExceptions とそのサブクラスをキャッチする必要はありません。それらは非チェック例外と呼ばれます。

于 2012-09-25T23:34:12.337 に答える