Defensive Programmierung
Lernen Sie defensive Programmierung: Eingaben validieren, null vermeiden und mit klaren Exceptions frühzeitig fehlschlagen.
Defensive Programmierung ist eine kostenlose Java Academy-Lektion auf CoddyKit. Dies ist Lektion 3 von 3. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Java Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Java Academy-Kurs umfasst insgesamt 3 Lektionen.
Einführung
Defensive Programmierung bedeutet, Code zu schreiben, der Fehler wie ungültige Eingaben, null-Werte und falsche Zustände vorwegnimmt. Sie hilft, Probleme frühzeitig zu erkennen.
Eingaben validieren
Prüfen Sie Argumente am Anfang von Methoden. Wenn eine Eingabe ungültig ist, lösen Sie sofort eine Ausnahme aus, anstatt mit fehlerhaften Daten fortzufahren.
Code: Eingabe validieren
Diese Methode prüft den Nenner und löst eine Ausnahme aus, anstatt durch null zu dividieren.
public class Main {
static int divide(int a, int b) {
if (b == 0) {
throw new IllegalArgumentException("Denominator must not be zero");
}
return a / b;
}
public static void main(String[] args) {
try {
System.out.println(divide(10, 0));
} catch (IllegalArgumentException e) {
System.out.println("Caught: " + e.getMessage());
}
}
}
null-Werte vermeiden
Vermeiden Sie es, null zu übergeben oder zurückzugeben. Verwenden Sie stattdessen leere Collections, Standardwerte oder Optional, um NullPointerExceptions zu reduzieren.
Code: null-Prüfung
Hier prüfen wir auf null und lösen eine Ausnahme aus, anstatt später eine NullPointerException auftreten zu lassen.
public class Main {
static String upper(String s) {
if (s == null) {
throw new IllegalArgumentException("String must not be null");
}
return s.toUpperCase();
}
public static void main(String[] args) {
try {
System.out.println(upper(null));
} catch (IllegalArgumentException e) {
System.out.println("Caught: " + e.getMessage());
}
}
}
Code: Fail Fast
Fail Fast: Erkennen Sie Probleme sofort und geben Sie klare Fehlermeldungen aus. Dadurch verhindern Sie verwirrende Fehler zu einem späteren Zeitpunkt.
public class Main {
static int[] makeArray(int size) {
if (size < 0) {
throw new IllegalArgumentException("Size must be non-negative");
}
return new int[size];
}
public static void main(String[] args) {
try {
makeArray(-5);
} catch (IllegalArgumentException e) {
System.out.println("Caught: " + e.getMessage());
}
}
}
Check: defensive Programmierung
Kurzer Check: Was ist ein wichtiges Ziel defensiver Programmierung?
Zusammenfassung
Zusammenfassung: Defensive Programmierung validiert Eingaben, vermeidet null-Werte und arbeitet nach dem Fail-Fast-Prinzip. Sie macht Programme sicherer und leichter zu debuggen.
Häufig gestellte Fragen
Ist die Lektion „Defensive Programmierung“ kostenlos?
Ja — der vollständige Text von „Defensive Programmierung“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Java Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Java Academy-Kurs umfasst insgesamt 3 Lektionen.
Was lerne ich in „Defensive Programmierung“?
Lernen Sie defensive Programmierung: Eingaben validieren, null vermeiden und mit klaren Exceptions frühzeitig fehlschlagen. Du übst Java Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Java Academy zu starten?
Keine Vorkenntnisse erforderlich. Java Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 3.
Wie lange dauert die Lektion „Defensive Programmierung“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Java Academy-Lektion Code schreiben und ausführen?
Ja. Jede Java Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Exceptions auslösen und eigene Exceptions
- try-with-resources (AutoCloseable)
- Defensive Programmierung