İstisnalar (Exceptions)
İstisna programın normal akışı kesildiğinde ortaya çıkan durumdur. İstisna örnekleri:
- Yazdırma sırasında printerin güç düğmesinin açık olmaması
- Olmayan bir dosyaya erişmek
- Olmayan bir kaydı güncellemek
Bu istisnalar meydana geldiğinde program bunları yönetmek için harekete geçmelidir. Örneğin, eğer kullanıcı olmayan bir dosyayı ele almayı istemiş ise sistem bu istisnayı yakalamalı ve yeni bir dosya oluşturmalı gibi.
İstisna Tipleri
Bir çok farklı istisna tipi vardır ve bunlar arasındaki faklılık alınan hata nedeniyle ortaya çıkar. Bu tiplerin bir çoğu çekirdek kod içinde tanımlanmışlardır ve genellikle uygulama kodundan fırlatılmazlar. Her istisna tipi her nekadar yakalanabilir olsada hangi istisnanın yönetileceği kod yazarı sorumluluğundadır. Bir istisna tipi sistemin Exception enumu kullanılarak tanımlanır. Çünkü sistem enumu değiştirilemez ve böylece kullanıcı yeni tipler ekleyemez.
İstisna | Tanım |
info | Bilgisel istisnaları görüntüler. |
warning | Programın kırılmasına sebep olmayan illegal operasyon işletildiğini gösterir. |
deadlock | Kullanıcıyı sistemin veritabanında deadlock durumu ile karşılaştığını bildirir. |
error | Programın kırılmasına sebep olan bir hata olduğunu bildirir ve işlemi durdurur. |
internal | Microsoft Dynamics AX 2009 dahili geliştirme hatalarını görüntüler. |
break | Kullanıcının Break ya da Ctrl+C bastığını gösterir. |
dderror | DDE-kernel sınıfında bir hata olduğunu gösterir. |
İstisna | Tanım |
sequence | Tanımlanmamış. |
numeric | str2int, str2int64, veya str2num işlevlerinin kullanımı sırasında oluşan hataları belirtir. |
CLRError | CLR işlevselliğinin kullanımı sırasında oluşan hataları bildirir. |
CodeAccessSecurity | CodeAccessPermission isteği sırasında oluşan hataları işaret eder. |
UpdateConflict | Aynı anda güncelleme yapıldığı durumlarda oluşur ve işlem tekrarlanır. |
UpdateConflictNotRecovered | Aynı anda güncelleme yapıldığı durumlarda oluşur ve işlem tekrarlanmaz. |