Назад Зміст Вперед

9.8. Класи винятків, створені користувачем

Незважаючи на те, що вбудовані винятки Java забезпечують обробку найбільш загальних помилок, у деяких випадках доцільно створити власний тип ВС (виняткових ситуацій), специфічний до певного застосування.Для цього необхідно визначити підклас класу Exception. У цьому разі немає потреби що-небудь реалізовувати. Саме існування класу дає змогу використовувати його як виняток. Розглянемо приклад:

Визначається клас WrongDayException для представлення специфічного винятку, який генерується цим прикладом. Клас визначає два конструктори. Якщо поточний день тижня не збігається ні з вівторком, ні з четвергом, метод doIt() генерує WrongDayException. У цьому випадку об'єкт WrongDayException створюється у процесі генерації винятку. Це загальноприйнята практика. Оголошення методу doIt() містить генератор throws, для вказівки, що цей метод може генерувати WrongDayException.

У методі main() виклик doIt() поміщено в блок try, так, що він може обробити WrongDayException,згенерований у doIt(). В catсh-блоці здійснюється роздрук повідомлення про помилку із застосуванням методу getMessege(). Даний метод відтворює рядок, переданий конструктору при створенні об'єкту винятку.

Бернакевич І., Вагін П. Програмування мовою Java

.