Dart dilinde hata yönetimi, try, catch, on, ve finally bloklarını kullanarak gerçekleştirilir. İşte temel hata yönetimi yapıları:

try {
  // Hata alabilecek kodlar buraya yazılır
  int result = 12 ~/ 0; // Bu kod, bir hata üretecek çünkü 0'a bölme yapılmaktadır
  print(result); // Bu satır çalıştırılmayacak
} catch (e) {
  // Hata yakalandığında çalışacak kodlar buraya yazılır
  print('Hata oluştu: $e');
} finally {
  // Her durumda çalışacak kodlar buraya yazılır
  print('Finally bloğu çalıştı');
}

Bu yapı, try bloğu içindeki kodlar çalıştırılırken bir hata meydana gelirse, program catch bloğuna geçer ve hata yakalanır. finally bloğu ise hata olsun veya olmasın her durumda çalıştırılır. catch bloğu isteğe bağlıdır, yani hata yakalanması durumunda çalışır.

try {
  int result = 12 ~/ 0;
  print(result);
} on IntegerDivisionByZeroException {
  print('Sıfıra bölme hatası');
} catch (e) {
  print('Bilinmeyen bir hata oluştu: $e');
}

Sadece belirli bir hata türünü yakalamak için on anahtar kelimesini kullanabilirsiniz.

Custom Hata Yakalama:

Kendi tanımladığınız özel hata türlerini yakalamak için:

class CustomException implements Exception {
  final String message;
  CustomException(this.message);
}

void exampleFunction() {
  throw CustomException('Bu bir özel hata!');
}

void main() {
  try {
    exampleFunction();
  } catch (e) {
    if (e is CustomException) {
      print('Özel hata yakalandı: ${e.message}');
    } else {
      print('Bilinmeyen bir hata oluştu: $e');
    }
  }
}

YORUMLAR

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir