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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

olmadığı için kolaylıkla " burada oluĢan istisnanın sebebi parametrenin eksi gönderilmesidir " diyebilirsiniz<br />

ama çok daha büyük uygulamalarda bu tür çıkarımlar yapmak zannedildiği kadar kolay olmayabilir. ()<br />

8.1.8. finally Bloğu<br />

Bir iĢlemin her koĢulda - istisna olsun ya da olmasın - kesin olarak yapılmasını istiyorsak finally bloğu<br />

kullanmalıyız. ()<br />

Gösterim-8.10:<br />

try {<br />

// riskli kod<br />

// bu kod BenimHatam,SeninHatan<br />

// OnunHatasi, BizimHatamiz<br />

// tipinde istisnalar firlatabilir<br />

} catch(BenimHatam bh) {<br />

// BenimHatam olusursa buraya<br />

} catch(SeninHatan sh) {<br />

// SeninHatan olusursa buraya<br />

} catch(OnunHatasi oh) {<br />

// OnunHatasi olusursa buraya<br />

} catch(BizimHatamiz bizh) {<br />

// BizimHatamiz olusursa buraya<br />

} finally {<br />

// ne olursa olsun calisacak kod buraya<br />

}<br />

Ne olursa olsun çalıĢmasını istediğiniz kodu finally bloğuna yazabilirsiniz. Bir uygulama üzerinde<br />

açıklanmaya çalıĢılırsa. ()<br />

Örnek: FinallyOrnek1.java ()<br />

public class FinallyOrnek1 {<br />

public static void a(int deger) throws SeninHatan {<br />

if(deger < 0 ) {<br />

throw new SeninHatan();<br />

}<br />

}<br />

public void hesapla() {<br />

for(int i=-1 ; i < 1 ; i++ ) {<br />

try {<br />

System.out.println("a() cagriliyor");<br />

a(i);<br />

} catch(SeninHatan shEx) {<br />

System.out.println("SeninHatan olustu : " +<br />

shEx);<br />

} finally {<br />

System.out.println("finally blogu<br />

calistirildi");<br />

}<br />

}<br />

}<br />

public static void main(String args[]) {<br />

FinallyOrnek1 fo1 = new FinallyOrnek1();<br />

fo1.hesapla();<br />

230

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

Saved successfully!

Ooh no, something went wrong!