[[oktatas:programozás:csharp|< Csharp]] ====== Csharp kivételkezelés ====== Fejlesztés alatt. ===== Nem megvalósított metódus ===== Ha egy metódust nem valósítottunk meg, akkor NotImplementedException kivételt szokás dobni: throw new NotImplementedException(); ===== Kivétel kezelése másik metódusból ===== A kivételkezelésnek pont az a szépsége, hogy a hibákat nem kell ott kezelni, ahol azok keletkeznek. Így szétválasztható a hibakezelés és a megvalósítás. Figyeljük meg a következő programot. Az olvas() metódus végzi a hibakezelést, a megvalósítás, azonban a tryOlvas() metódusban van. using System; using System.IO; class Program01 { public static void olvas() { try { tryOlvas(); }catch(FileNotFoundException) { Console.WriteLine("A fájl nem található!"); } } public static void tryOlvas() { FileStream folyam = new FileStream("adat.txt", FileMode.Open); StreamReader olvaso = new StreamReader(folyam); while (!olvaso.EndOfStream){ Console.WriteLine(olvaso.ReadLine()); } olvaso.Close(); } public static void Main() { olvas(); Console.WriteLine("Program vége"); } }