EMZETT.
Login

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), NullPointerException bei null.
  • Alternative: Objects.requireNonNull für null-Prüfungen.

Siehe auch: throw und throws, Exception Handling (Ausnahmebehandlung)