IllegalArgumentException
Kurz: Die IllegalArgumentException meldet, dass einer Methode ein Argument übergeben wurde, das nicht erlaubt ist, zum Beispiel eine negative Größe oder ein leerer Name.
Genauer: Sie ist ungeprüft (erbt von RuntimeException) und gehört zu den häufigsten selbst geworfenen Ausnahmen. Sie sagt dem Aufrufer: Der Fehler liegt in deinem Aufruf, nicht in meiner Methode.
Im Detail
public void setGroesse(int cm) {
if (cm <= 0) {
throw new IllegalArgumentException("Größe muss positiv sein: " + cm);
}
this.groesse = cm;
}- Ursache beheben: Eingabe prüfen, bevor die Methode aufgerufen wird.
- Meldung: Den falschen Wert in die Meldung schreiben, das spart Suchzeit.
- Verwandt:
IllegalStateException(Objekt im falschen Zustand),NumberFormatException(Unterklasse),NullPointerExceptionbei null. - Alternative:
Objects.requireNonNullfür null-Prüfungen.
Siehe auch: throw und throws, Exception Handling (Ausnahmebehandlung)