Özel istisnalar
Sadece IndexError gibi yerleşik istisnalara güvenmek zorunda değilsin: uygulamana daha özgü özel istisnalar tanımlayabilirsin. Hatta istisna hiyerarşileri de oluşturabilirsin. Bir istisna tanımlamak için tek ihtiyacın olan, yerleşik Exception sınıfından veya onun alt sınıflarından birinden miras alan bir sınıf.
Kursun önceki kısımlarında bir Employee sınıfı tanımladın ve asgari maaşın altında maaşla bir çalışan oluşturmak ya da fazla büyük bir zam vermek gibi hataları print ifadeleri ve varsayılan değerlerle ele aldın. Bu durumu ele almanın daha iyi yolu istisnalar kullanmaktır — çünkü bu hatalar uygulamamıza özgüdür (örneğin herkese ortak olan sıfıra bölme hatasının aksine), özel istisna sınıfları kullanmak mantıklıdır.
Bu egzersiz
Python'da Nesne Yönelimli Programlamaya Giriş
kursunun bir parçasıdırUygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Define SalaryError inherited from ValueError
____
# Define BonusError inherited from SalaryError
____