Page 50 - 4657
P. 50
Типи виключень
У вершині ієрархії виключень існує клас Throwable. Кожний
з типів виключень є підкласом класу Throwable. Два
безпосередніх спадкоємці класу Throwable поділяють ієрархію
підкласів виключень на дві різні галузі. Один з них - клас
Ехception - використовується для опису виняткові ситуації, які
повинні перехоплюватися програмним кодом користувача. Інша
галузь дерева підкласів Throwable - клас Error, що призначений
для опису виключених ситуацій, що при звичайних умовах не
повинні перехоплюватися в користувальницькій програмі.
Неперехоплені виключення
Об'єкти-виключення автоматично створюються
виконуючим середовищем Java у результаті виникнення
визначених виняткових ситуацій. Наприклад, чергова наша
програма містить вираження, при обчисленні якого виникає
розподіл на нуль.
class Exc0 {
public static void main(string args[]) {
int d = 0;
int a = 42 / d;
} }
Ось висновок, отриманий при запуску нашого прикладу.
С:\> java Exc0
java.lang.ArithmeticException: / by zero
at Exc0.main(Exc0.java:4)
Зверніть увагу на той факт, що типом збудженого
виключення був не Exception і не Throwable. Це підклас класу
Exception, а саме: ArithmeticException, що пояснює, яка помилка
виникла при виконанні програми. От інша версія того ж класу, у
якій виникає та ж виняткова ситуація, але цього разу не в
програмному коді методу main.
class Exc1 {
48