Java Academy · Les

Defensief programmeren

Leer defensief programmeren: valideer invoer, vermijd nullwaarden en breek vroegtijdig af met duidelijke exceptions.

Les 3 van 38 stappen

Defensief programmeren is een gratis Java Academy-les op CoddyKit. Dit is les 3 van 3. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Java Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Java Academy bevat in totaal 3 lessen.

Introductie

Defensief programmeren betekent dat je code schrijft die anticipeert op fouten: ongeldige invoer, null-waarden en onjuiste toestanden. Zo kun je problemen vroeg opvangen.

Invoer valideren

Controleer argumenten aan het begin van methoden. Als de invoer ongeldig is, gooi je onmiddellijk een uitzondering in plaats van met onjuiste gegevens door te gaan.

Code: invoer valideren

Deze methode controleert de noemer en gooit een uitzondering in plaats van door nul te delen.

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-waarden vermijden

Vermijd het doorgeven of retourneren van null. Gebruik in plaats daarvan lege verzamelingen, standaardwaarden of Optional om NullPointerExceptions te beperken.

Code: null-controle

Hier controleren we op null en gooien we een uitzondering in plaats van later een NullPointerException te laten optreden.

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: direct falen

Direct falen: spoor problemen onmiddellijk op met duidelijke fouten. Zo voorkom je verwarrende fouten later.

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());
    }
  }
}

Controle van defensief programmeren

Snelle controle: wat is een belangrijk doel van defensief programmeren?

Samenvatting

Samenvatting: defensief programmeren valideert invoer, vermijdt null-waarden en faalt direct. Zo worden programma's veiliger en gemakkelijker te debuggen.

Gratis beginnen

Leer Java met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
104
Lessen
374

Veelgestelde vragen

Is de les “Defensief programmeren” gratis?

Ja — de volledige tekst van “Defensief programmeren” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Java Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Java Academy bevat in totaal 3 lessen.

Wat leer ik in “Defensief programmeren”?

Leer defensief programmeren: valideer invoer, vermijd nullwaarden en breek vroegtijdig af met duidelijke exceptions. Je oefent met Java Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Java Academy te beginnen?

Ervaring vooraf is niet nodig. Java Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 3 van 3.

Hoe lang duurt de les “Defensief programmeren”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Java Academy?

Ja. Elke les over Java Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Exceptions genereren en aangepaste exceptions
  2. try-with-resources (AutoCloseable)
  3. Defensief programmeren
← Terug naar Java Academy