Upload
kenan-kilicaslan
View
12
Download
0
Embed Size (px)
DESCRIPTION
Nesneye Yönelik Programlama
Citation preview
Nesneye Yönelik Prog. Giriş. ve Operatörler
Exceptions (İstisnalar)
İstisnalar nasıl oluşur?
Bir kodda yazım hatası olmayabilir. Bu o kod çalışırken hata olmayacağı anlamına gelmez. Çalışma zamanında (run-time) meydana gelen hatalar exception(istisna) ’dır.
Örneğin 5 elemanlı dizimiz var, biz altıncı elemana ulaşmak istediğimizde exception oluşur.
Exception’lar oluştuğunda program akışı kesilir. Bu hataya rağmen akışı sürdürmek isteyebiliriz. Bu exception yönetimi ile mümkündür.
Exception yada istisnayı yönetmek aşağıdaki kodu yazarız.
try1
A-B Şubesi I.Ö. Öğr.Gör. Kenan KILIÇASLANHafta 14 31-12-2010
Nesneye Yönelik Prog. Giriş. ve Operatörler
{//istisna oluşturabilecek kod.
} catch (exception e){
//istisna oluştuğunda çalışacak kod.}
try .. catch bloğu çalışma zamanında meydana gelen her türlü hatayı yakalar. Try içindeki herhangi bir satırda hata oluştuğunda akış, catch bloğuna geçer. Burada Exception e , oluşan hatanın bulunduğu nesne.
İstisnaya neler sebep olabilir? Açılmak istenen dosya
bulunmayabilir Ağ bağlantısı kopmuş olabilir Uygulamaya kullanıcı beklenmeyen
bir veri girmiş olabilir Yazılmak istenen dosya, başka
program tarafından açılmış olabilir.
2A-B Şubesi I.Ö. Öğr.Gör. Kenan KILIÇASLANHafta 14 31-12-2010
Nesneye Yönelik Prog. Giriş. ve Operatörler
Diziye, boyutundan büyük elemana erişilmek istenebilir.
Yukarıdaki kodda , dizinin 5. elamana ulaşmaya çalıştı. Bu nedenle exception oluştu.
public class istisnayonetimiuygulama { public istisnayonetimiuygulama() { }
3A-B Şubesi I.Ö. Öğr.Gör. Kenan KILIÇASLANHafta 14 31-12-2010
Nesneye Yönelik Prog. Giriş. ve Operatörler
public static void main(String[] args) { int[] sayi = {1,2,3,4}; System.out.println("Başlangıç"); for (int i=0;i<5; i++) { try{ System.out.println("Sayı-->"+sayi[i]); } catch(ArrayIndexOutOfBoundsException ex) { System.out.println("Hata oluştu:"+ex.toString()); } } System.out.println("Bitiş"); }}
public class istisnayonetimiuygulama { public istisnayonetimiuygulama() { }
4A-B Şubesi I.Ö. Öğr.Gör. Kenan KILIÇASLANHafta 14 31-12-2010
Nesneye Yönelik Prog. Giriş. ve Operatörler
public static void main(String[] args) { int[] sayi = {1,2,3,4}; System.out.println("Başlangıç"); for (int i=0;i<5; i++) { try{ System.out.println("Sayı-->"+sayi[i]); } catch(Exception ex) { System.out.println("Hata oluştu:"+ex.toString()); } } System.out.println("Bitiş"); }}
5A-B Şubesi I.Ö. Öğr.Gör. Kenan KILIÇASLANHafta 14 31-12-2010