Uncaught Exception
1 min readJan 12, 2020
Uncaught Exception hakkın bilmemiz gereken şeyler;
- Eğer bir hata varsa, hata çıkan yerden methodlar geriye doğru çökmeye başlar ta ki try-catch’e düşene kadar, eğer try-catch yoksa methodun ilk tetiklendiği main methoduna kadar kod çöker.
- Eğer try-catch var ise try-catch hangi methodda ise kod o methoda kadar çöker, hata catch ile yakalanır ve catch’e düştüğü methoddan devam eder.
Örnek olarak;
- main methodunda null bir String method1'e gönderiyoruz.
- method1 gelen parametreyi method2'ye gönderiyor.
- method2 gelen parametreyi method3′ e gönderiyor ve method3 içeriği null olan String parametre ile işlem yapmak istiyor.
- name içeriği null olduğu için NullPointerException fırlatacaktır. method3 çöker ve geriye doğru method2'ye gelir.
- method2'de de hata yakalanamayacağı için yani try-catch mekanizması olmadığı için method2 çöker ve method1'e geriler.
- method1'de catch NullPointerException hatasını yakalar ve 18. satırdan kodlar işlenmeye devam eder.
Bu kod parçasında stack görüntüsü şöyle olacaktır,
Her yeni method tetiklendiğinde stack’de eski methodun üzerine gelmektedir.
Github : UncaughtException