Junior
Hoe werkt de try-catch-constructie in Java?
sobes.tech AI
Antwoord van AI
De try-catch-constructie wordt gebruikt om uitzonderingen af te handelen, gebeurtenissen die de normale stroom van de programma-uitvoering onderbreken.
- try: Codeblok waarin mogelijk een uitzondering kan optreden. Als er binnen de
try-blok een uitzondering optreedt, wordt de uitvoering van dat blok onderbroken. - catch: Codeblok dat wordt uitgevoerd als een specifieke soort uitzondering (aangegeven tussen haakjes na
catch) optreedt in het bijbehorendetry-blok. Java zoekt een geschiktcatch-blok om de uitzondering af te handelen. Als die gevonden wordt, wordt de code in dat blok uitgevoerd. - finally (optioneel): Codeblok dat gegarandeerd wordt uitgevoerd na de try-catch-blokken, ongeacht of er een uitzondering optrad of niet, of dat deze werd opgevangen. Wordt gebruikt om resources op te schonen (bestanden sluiten, verbindingen etc.).
public class ExceptionHandlingExample {
public static void main(String[] args) {
try {
// Code die een uitzondering kan veroorzaken
int result = 10 / 0; // ArithmeticException
System.out.println("Deze regel wordt niet uitgevoerd als een uitzondering optreedt.");
} catch (ArithmeticException e) {
// Afhandeling van het specifieke type uitzondering
System.err.println("Er is een wiskundige fout opgetreden: " + e.getMessage());
} catch (Exception e) {
// Algemene catch voor andere uitzonderingen
System.err.println("Er is een onbekende fout opgetreden: " + e.getMessage());
} finally {
// Code die altijd wordt uitgevoerd
System.out.println("Finally-blok uitgevoerd.");
}
System.out.println("Programma gaat verder na try-catch.");
}
}
Vergelijking tussen try-catch en throws:
| Kenmerk | try-catch | throws |
|---|---|---|
| Doel | Afhandeling van uitzonderingen | Verantwoordelijkheid delegeren |
| Plaats | Codeblok | Methodesignatuur |
| Actie | Vangt en behandelt de uitzondering | Geeft de mogelijkheid om een uitzondering te laten gooien |