Junior — Middle
In welke situaties wordt de finally-blok gebruikt bij het afhandelen van uitzonderingen en welke rol speelt het?
sobes.tech AI
Antwoord van AI
De finally-blok in C# wordt gebruikt om code uit te voeren die in elk geval moet worden uitgevoerd na het try-blok en eventuele catch-blokken, ongeacht of er een uitzondering is opgetreden of niet.
De belangrijkste rol van finally is het vrijmaken van bronnen, het sluiten van bestanden, verbindingen met databases, het vrijmaken van geheugen en andere opruimacties die altijd moeten plaatsvinden.
Voorbeeld:
try
{
// Code die een uitzondering kan veroorzaken
using (var file = new StreamReader("file.txt"))
{
var content = file.ReadToEnd();
}
}
catch (IOException ex)
{
Console.WriteLine("Fout bij het lezen van het bestand: " + ex.Message);
}
finally
{
// Deze code wordt altijd uitgevoerd, zelfs als er geen uitzondering was of deze werd afgehandeld
Console.WriteLine("Bezig met afsluiten van het bestand.");
}
Als er een uitzondering optreedt in het try-blok en deze niet wordt opgevangen, wordt finally toch uitgevoerd voordat de uitzondering verder wordt doorgegeven.