Junior — Middle
Hoe kun je automatische vrijgave van bronnen in een programma garanderen?
sobes.tech AI
Antwoord van AI
In Java wordt het automatisch vrijmaken van bronnen meestal geregeld door de try-with-resources constructie, die in Java 7 is geïntroduceerd. Hiermee worden bronnen die de interface AutoCloseable implementeren (bijvoorbeeld invoer-/uitvoerstreams, databaseverbindingen, enz.) automatisch gesloten na afloop van het try-blok, zelfs als er binnen het blok een uitzondering optreedt.
Voorbeeld:
try (BufferedReader reader = new BufferedReader(new FileReader("file.txt"))) {
String line = reader.readLine();
System.out.println(line);
} catch (IOException e) {
e.printStackTrace();
}
// reader wordt hier automatisch gesloten
Vroeger werd voor het vrijmaken van bronnen de finally-blok gebruikt, waarin expliciet de close()-methode werd aangeroepen. Maar try-with-resources maakt de code schoner en veiliger.