Tarih :15 Aralık 2019

Custom Exception Nasıl Yazılır?

Try-Catch-Finally makalemizden yola çıkarak kendi Exception sınıfımızı yazmayı öğreneceğiz.

Yukarıdaki kodu inceleyelim.

Main metot bir inner class olan PreCheck sınıfına kredi kartı numarası gönderiyor. Daha sonra main metot içerisinde validation() metodu çağırılıyor ve gönderilmiş olan kart numarasının geçerliliği kontrol ediliyor. Eğer gönderilen kart numarası içerisinde 4543 yer alıyor ise girişin başarılı olduğunu, değilse hatalı olduğunu konsolda bastırıyor. Bununla beraber geçersiz olması durumunda metot Exception fırlatıyor.

Biz bu senaryoda programın Exception yerine kendi yazacağımız Exception sınıfımızı göndermesini isteyeceğiz.

Kodu yineleyelim.

SOLID prensipleri gereği isimlendirme yaparken özneyi açık açık belirtmemiz gerekir. Dolayısıyla yazacağımız Exception sınıfımızın ismi “ValidationException” olacaktır.

Custom Exception sınıfımızın içini yazmaya başlayalım.

Yeni bir class açarak adını “ValidationException” koyalım.

Exception hiyerarşisinden hatırlayalım. Bu yazdığımız sınıfın Exception olabilmesi için extends takısı ile Exception’dan inherit edilmesi gerekir.

validation() metodunu tekrar incelersek, geçersiz olma durumunda programın mesaj geçmesini belirttik. Dolayısıyla”ValidationException” sınıfımızın bir yapılandırıcıya ihtiyacı vardır.

Mesajımızı yazdırmak için yalnızca yapılandırıcı yetersiz kalacaktır. Dikkat ettiyseniz override ettiğimiz bir başka metot olan getMessage() ile mesajımızı döndürüyoruz. Bu override edilen metot Throwable sınıfının metotlarından biridir.

Artık kendi yazmış olduğumuz “ValidationException” sınıfını hata yönetimlerinde kullanabiliriz.

Main Class son hali :

ValidationException son hali :

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir