Kitaplar / Yöntem Dil Başvurusu / 8. Hatalar
8. Hatalar
dene_deyimi: 'dene' deyimler
['yakala' ['(' AD ')'] deyimler]
['sonunda' deyimler]
'bitir'dene bölümündeki deyimler çalışırken bir hata oluşursa denetim yakala bölümüne geçer; ayraç içindeki ad hata nesnesine bağlanır. sonunda bölümü, hata olsa da olmasa da, dene deyiminden çıkılırken çalışır. Yakalanmayan hata dıştaki dene deyimine, o da yoksa programın sonuna kadar yayılır; program “Çalışma hatası” iletisi ve 1 çıkış koduyla biter.
dene
fırlat Hata('Geçersiz giriş', 'DoğrulamaHatası')
yakala (h)
yaz(h.mesaj + ' / ' + h.tür, 1)
sonunda
yaz('bitti', 1)
bitirGeçersiz giriş / DoğrulamaHatası
bittifırlat ifade bir hata başlatır. Hata(mesaj) ya da Hata(mesaj, tür) bir hata nesnesi oluşturur; nesnenin mesaj ve tür alanları vardır. Kendi sınıflarınızın nesneleri de fırlatılabilir. Çalışma zamanı hataları (sıfıra bölme, sınır aşımı, tip uyuşmazlığı, tanımsız ad) aynı yolla yakalanır; türleri Hata’dır. İddia(koşul, mesaj) koşul yanlışsa hata fırlatır.
Sözdizimi hataları program çalışmadan önce bildirilir ve yakalanamaz.