06.03.2015 Views

Java Kitabı

JAva`nın çalışma mantığıyla başlayıp basitten gelişmişe iyi bir kaynak

JAva`nın çalışma mantığıyla başlayıp basitten gelişmişe iyi bir kaynak

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

}<br />

a();<br />

} catch(YuksekSeviyeliIstisna e) {<br />

e.printStackTrace();<br />

}<br />

}<br />

static void a() throws YuksekSeviyeliIstisna {<br />

try {<br />

b();<br />

} catch(OrtaSeviyeliIstisna e) {<br />

throw new YuksekSeviyeliIstisna(e);<br />

}<br />

}<br />

static void b() throws OrtaSeviyeliIstisna {<br />

c();<br />

}<br />

static void c() throws OrtaSeviyeliIstisna {<br />

try {<br />

d();<br />

} catch(DusukSeviyeliIstisna e) {<br />

throw new OrtaSeviyeliIstisna(e);<br />

}<br />

}<br />

static void d() throws DusukSeviyeliIstisna {<br />

e();<br />

}<br />

static void e() throws DusukSeviyeliIstisna {<br />

throw new DusukSeviyeliIstisna(); // baslangic<br />

}<br />

Yukarıdaki örneğimizde üç adet istisna tipi bulunmaktadır. e() yordamının içerisinde baĢlayan istisnalar<br />

zinciri main() yordamının içerisinde son bulmaktadır. Buradaki olay oluĢan bir istisnayı diğerine<br />

ekleyerek aynı tip hata mesajları elde etmektir. Uygulamanın çıktısı aĢağıdaki gibidir. ()<br />

YuksekSeviyeliIstisna: OrtaSeviyeliIstisna: DusukSeviyeliIstisna<br />

at Kisaltma.a(Kisaltma.java:29)<br />

at Kisaltma.main(Kisaltma.java:20)<br />

Caused by: OrtaSeviyeliIstisna: DusukSeviyeliIstisna<br />

at Kisaltma.c(Kisaltma.java:39)<br />

at Kisaltma.b(Kisaltma.java:33)<br />

at Kisaltma.a(Kisaltma.java:27)<br />

... 1 more<br />

Caused by: DusukSeviyeliIstisna<br />

at Kisaltma.e(Kisaltma.java:46)<br />

at Kisaltma.d(Kisaltma.java:43)<br />

at Kisaltma.c(Kisaltma.java:37)<br />

... 3 more<br />

Uygulamanın çıktısından da anlaĢılacağı üzere, tekrar eden kısmın kaç kere tekrar ettiği bilgisi de<br />

verilmektedir. Mesela:<br />

at Kisaltma.c(Kisaltma.java:39)<br />

at Kisaltma.b(Kisaltma.java:33)<br />

239

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!