[[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");
}
}