Ana içeriğe atla

( C#) Ders 7 - C# ile Kendi Hata Türlerimizi Nasil Olustururuz

.NET Framework de Hata Hiyerarsisi

.Net de iki tip hata türü vardir:
  • Çalisma aninda(runtime) olusturulan (Common Language Runtime) hata türleri, bunlar System Exceptions diye adlandirilir.
  • Kullanici programi tarafindan üretilen hata türleri. Bunlar da Application Exceptions diye adlandirilir.

.Net framework de hata hiyerarsisi asagidaki gibidir.


hata hiyerarsisi

Yukaridaki hiyerarsiden dolayi kullanici tarafindan olusturulan her hata ApplicationException sinifindan türemek zorundadir. Asagidaki kod örnegi OrnekHataTuru adinda yeni bir hata türü olusrurmamizi saglar.
?
1
2
3
4
5
6
7
8
9
10
11
class OrnekHataTuru : ApplicationException
{
    public OrnekHataTuru() : base ("Sifira Bölme Hatasi")
    {
 
    }
    public OrnekHataTuru(string message) : base(message)
    {
 
    }
}
Yukaridaki kod blugu ile hatamizi olusturduk. Simdi bir örnekle bu hata türünü kullanalim
?
1
2
3
4
5
6
7
static double Bol(double a, double b)
{
    if (b == 0)
        throw new OrnekHataTuru();
    double c = a / b;
    return c;
}
Yukarida bölme islemi yapan ve bölen 0 oldugu zaman hata firlatan bir fonksiyon yazdik. Simdi bu fonksiyonu main içinde kullanip sonuçlari görelim.
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
static void Main()
{
    try
    {
        Console.WriteLine("Try blogu içinde");
        double d = Bol(3,0);
        Console.WriteLine("Bolum : {0}",d);
 
    }catch(OrnekHataTuru e)
    {
        Console.WriteLine("Catch blogu içinde");
        Console.WriteLine("Hata olustu.");
        Console.WriteLine("Hata Mesaji"+e.Message);
    }
}

Kendi hata türlerimizi olustururken dikkat edilmesi gereken bazi önemli noktalar sunlardir:

  • .Net frameworkde tüm hata türlerinin sonunda "Exception" ifadesi yer alir. Örnegin; SystemException, NullReferenceException vs. Bu yüzden tanimladiginiz hata türünü isimlendirken hata türü isminin sonunda Exception ifadesini kullanmaniz önerilir. Bizim yaptigimiz örnekde buna dikkat etmedik ama siz edin :)
  • Olusturdugunuz Hata türünü her zaman ApplicationException sinifindan türetin.
  • Hata yakalama ve firlatma mekanizmasi bir miktar performans kaybina yol açar, Bu yüzden gereksiz hata firlatma ve yakalama islemleri yapmayin.

Yorumlar

Bu blogdaki popüler yayınlar

Bilgisayarın Sağlıklı ve Doğru Kullanımı

Bilgisayar genelde oturarak kullanıldığı için uzun süreli kullanımlar vücudumuza zarar verebilmektedir.Yazı yazmak,internet erişimi ya da oyun oynamak için uzun süreli kullanım;başta bel,boyun ve omurgalarımızın sağlığını tehdit eder.Diğer yandan sürekli aynı noktaya bakmak göz sağlığımıza zarar verir.Bu nedenle bilgisayar kullanıcısının oturma pozisyonuna çok dikkat etmesi ve uzun süre çalışmaması gerekir. Bilgisayar Kullanırken Oturma Şekli Önerileri ·         Bilgisayarı,uygun yükseliğe sahip olan masa ve sandalye üzerinde dik oturma konumunda kullanmak gerekir.Klavye ve farenin çok uzakta olmaması gerekir.Oturan kişinin gözü ile bilgisayar arasında 50-60 cm uzaklık olmalıdır.Kollar yatay ve rahat konumda olmalıdır.   ·         Masa yüksekliği yaklaşık 70 cm olmalıdır.Dizüstü bilgisayarlar için yükseltici olarak bilinen altlıklar yararlı olabilir.   ·         Oturma sırasında sırt desteklemeli ve...

MPLS Temel Konfigürasyonu

Bu yazı içerisinde sizlerle temel “MPLS” protokolü konfigürasyonunu adım adım uygulayarak paylaşacağım. Bu adımların tamamını Huawei marka AR 2200 Serisi Router ürün ailesi üzerinde konfigüre edeceğiz. Bu konfigürasyonların kullanıldığı ve çalıştırıldığı işletim sistemi versiyonu “ V200R003C00 ” dur. Konfigürasyon adımlarının tamamı bi çok üretici ürününde de aynı şekilde ve aynı ön gereksinim ve alt yapı hazır olduğu sürece uygulanabilir ve müşteri ve/veya Servis sağlayıcıda devreye alınabilir. İşlem adımlarının uygulanırken temiz bir şekilde anlaşılması çok önemlidir. MPLS Protokolü temel konfigürasyonunu aşağıdaki topoloji üzerinden uygulayarak sizlere sunuyor olacağım. MPLS Referans Topolojimiz Öncelikli olarak tüm Router cihazlarımızda, fiziksel interface’ler ve Loopback interfac IP adres tanımlamalarını topolojimize uygun ayarlıyoruz. RouterB IP İnterface konfigürasyonu; “Router B IP Konfigürasyonu çıktısı” “Router B Üzerinde Yer Alan İnterface’lerin IP...

Web Debugging - Hata Ayiklama (Fiddler Aracinin Kullanimi)

Debugging, hata ayiklama, programcinin olmazsa olmazi diyebiliriz. Kodlama sirasinda çikan hatalarda ya da hatasiz çalisan programda istenen sonuç dönmeyince, nerde hata yaptim diye satirlari incelemeye baslariz. Genelde kodlama sirasinda çikan hatalarimizda derleyici neyi yanlis yaptigimizi söylerken, runtime' da hatalarla karsilasinca ya da islemde bir yanlislik varsa isler biraz zorlasir. Pek çogumuz breakpoint'lerle adim adim inceleme yapariz, eger javascript kodlarimiz varsa alert'ler kullanarak isin içinden çikmaya çalisiriz. Tabi bu durum her zaman ise yaramayabilir, ya da çok can sikici bir hale dönüsebilir. Bu durumlarda browserda aslinda neler oldugunu ögrenmek için http requestlari takip edebilecegimiz programlar var. Fiddler bunlardan birisi. Fiddler Nedir Fiddler, bilgisayar ve internet arasindaki tüm web trafigini takip eden ve detayli bir sekilde analiz yapmamizi saglayan ücretsiz bir http debugging (Hata Ayiklama) programidir. Bu program, http trafigini...