- Autor

- Name
- Nelson Silva
- Social
Einführung
Beim Programmieren stoßen wir häufig auf unerwartete Situationen, die die normale Ausführung unseres Codes unterbrechen können. Diese Unterbrechungen werden gemeinhin als Ausnahmen bezeichnet. In C# ist die Ausnahmebehandlung grundlegend für die Entwicklung robuster und widerstandsfähiger Software.
Was sind Ausnahmen?
Eine Ausnahme in C# ist ein Ereignis, das auftritt, wenn während der Programmausführung eine ungewöhnliche Bedingung eintritt. In der Praxis stellt sie einen Fehler dar, der durch verschiedene Ursachen bedingt sein kann, wie IO-Fehler, Logikfehler oder Probleme beim Ressourcenzugriff.
Wie man Ausnahmen behandelt
try-catch-Blöcke
Der try-Block enthält Anweisungen, die eine Ausnahme auslösen können, während der catch-Block den Code enthält, der als Reaktion auf eine Ausnahme ausgeführt wird.
finally-Block
Der finally-Block wird immer nach den try- und catch-Blöcken ausgeführt, unabhängig davon, ob eine Ausnahme aufgetreten ist oder nicht. Er wird typischerweise für Aufräumarbeiten verwendet, wie das Schließen von Verbindungen oder Dateien.
using System;
namespace Base {
class Ausnahmen {
public void Run() {
int[] zahlen = new int[5] {
1, 2, 3, 4, 5
};
try {
Console.WriteLine($"Inhalt des Elements: {zahlen[4]}");
}
catch (Exception ausnahme) {
Console.WriteLine("Eine Ausnahme ist aufgetreten!");
Console.WriteLine(ausnahme);
}
finally {
Console.WriteLine("Der finally-Block wird immer ausgeführt.");
}
}
}
}
Häufige Ausnahmen in C#
NullReferenceException: Wird ausgelöst, wenn versucht wird, auf ein Member eines null-Objekts zuzugreifen.IndexOutOfRangeException: Tritt auf, wenn versucht wird, auf einen Index außerhalb der Grenzen eines Arrays zuzugreifen.InvalidCastException: Entsteht, wenn versucht wird, einen Typ in einen inkompatiblen umzuwandeln.
Fazit
Das Verstehen und korrekte Behandeln von Ausnahmen in C# ist unerlässlich für die Entwicklung zuverlässiger und robuster Anwendungen. Durch die Übernahme geeigneter Praktiken zur Ausnahmebehandlung stellen wir sicher, dass unsere Programme mit Fehlern elegant umgehen und den Benutzer angemessen informieren können.