Junior — Middle
In welchen Situationen wird der finally-Block in der Ausnahmebehandlung verwendet und welche Rolle spielt er?
sobes.tech KI
Antwort von AI
Der finally-Block in C# wird verwendet, um Code auszuführen, der in jedem Fall nach dem try-Block und möglichen catch-Blöcken ausgeführt werden soll, unabhängig davon, ob eine Ausnahme aufgetreten ist oder nicht.
Die Hauptaufgabe von finally ist die Freigabe von Ressourcen, das Schließen von Dateien, Verbindungen zu Datenbanken, das Freigeben von Speicher und andere Aufräumarbeiten, die immer erfolgen müssen.
Beispiel:
try
{
// Code, der eine Ausnahme auslösen kann
using (var file = new StreamReader("file.txt"))
{
var content = file.ReadToEnd();
}
}
catch (IOException ex)
{
Console.WriteLine("Fehler beim Lesen der Datei: " + ex.Message);
}
finally
{
// Dieser Code wird immer ausgeführt, auch wenn keine Ausnahme aufgetreten ist oder sie behandelt wurde
Console.WriteLine("Beenden der Arbeit mit der Datei.");
}
Wenn im try-Block eine Ausnahme auftritt und nicht abgefangen wird, wird finally trotzdem ausgeführt, bevor die Ausnahme weitergegeben wird.