7

クラスをキャッチまたは宣言する必要IllegalArgumentExceptionがないのに、他の例外をキャッチまたは宣言する必要があるのはなぜだろうか(例: )。java.net.MalformedURLException

public void foo() {
    throw new IllegalArgumentException("spam");
}

public void bar() throws MalformedURLException { // required
    throw new MalformedURLException("ham");
}

Errors はキャッチされることを意図していないため、宣言する必要がないことはわかっています。

キャッチする必要のない新しい例外を宣言したいと思います。

4

2 に答える 2

1

IllegalArgumentException は unchecked exception であるため、キャッチしない場合は JVM によって処理されます。これらの例外は RuntimeException、Error のサブクラスであり、MalformedURLException はチェック例外であり、プログラマーがキャッチする必要があります。情報

于 2013-10-04T20:41:06.610 に答える