15 49.0138 8.38624 1 0 4000 1 https://blog.mustafaergec.com.tr 300

C# Kendi İstisnai Durum Yönetimimizi Yapmak

Merhabalar, bu yazıda istisnai durum yönetimi nedir? Nasıl kullanılırdan? ziyade kendi istisnai durumumuzu nasıl yapabiliriz ile ilgili bir örnek yer almaktadır. İstisnai durum yönetimleri neredeyse tüm dillerde kullanılmaktadır. İstisnai durum yönetimi genelde kullanıcıdan veya program çalışması anında meydana gelen/gelebilecek hataların program akışını kesmesini önlemek için kullanılır. Try catch . Peki C# kendi istisnai durumumuzu yazabilir miyiz? yada kendi istisnai durumumuzu nasıl yapabiliriz?

  1. Kendi istisnai durumumuzu yazabilmek için öncelikle istisnai durumumuz ile ilgili bir class oluşturuyoruz. Ben class ismime Hata ismini verdim.
  2. Derleyicinin oluşturduğumuz class’ın istisnai durum olduğunu anlaması için ApplicationException sınıfından kalıtım almalıyız.
  3. Daha sonra hata mesajında kullanılmak üzere class içerisinde int bir sayı ve string bir deger tanımlaması yapılabilir. Veya yapılmayabilir. Bu kullanıcıya kalmış bir durumdur. İhtiyacınıza göre değişken sayısını belirleyebilirsiniz.
  4. Gerekli property tanımlamaları class içerisinde yapılmıştır.
  5. Kullanıcıya göndermek üzere ToString() methodunu override ediyoruz. Kullanıcı hata mesajı göstermek istediğinde bu method’u kullanacaktır.

 

Önerilen Yazı |  C# 2 Tarih Arasındaki Hafta Sonu Gün Sayısı Bulma

Hata class’ımız bu kadar. Artık bu class’ı kullanabiliriz. Ben bir windows form application açtığım için kodları bir buton click’e atadım ve buton click durumuna göre işlemler yapılıyor.

Program textBox1 içerisindeki sayıyı kontrol ediyor ve sayı 4’ten büyük ise throw new Hata(sayi, degerimiz); ile bize hata fırlatıyor. Hata fırlatıldığı anda catch bloğu devreye girerek yukarıda oluşturduğumuz ToString() methodunu bize gösteriyor.

Yukarıda catch bloğu Hata tipinde bir değişken almaktadır. Bu Hata daha önce oluşturmuş olduğumuz istisnai durumumuzun ismidir.

Category:C#
Önceki
Logitech M560 Kablosuz Mouse Uzun Dönem İncelemesi
Sonraki
Dinamik Broadcast Receiver Nedir ve Sayaç Yapımı

0 Yorum

LEAVE A REPLY