Книга: Основы программирования на Java

9.3. Неперехваченные исключения

9.3. Неперехваченные исключения

Объекты-исключения автоматически создаются исполняющей средой Java в результате возникновения определенных исключительных состояний. Например, очередная наша программа содержит выражение, при вычислении которого возникает деление на нуль.

class Ехс0 {
public static void main(string args[]) {
int d = 0;
int a = 42 / d;
}
}

Вот вывод, полученный при запуске нашего примера.

C:>javaExc0
java.lang. ArithmeticException: / деление на ноль
at Exc0.main(Exc0.java:4)

Обратите внимание на тот факт, что типом возбужденного исключения был не Exception и не Throwable. Это подкласс класса Exception, а именно: ArithmeticException, поясняющий, какая ошибка возникла при выполнении программы. Вот другая версия того же класса, в которой возникает та же исключительная ситуация, но на этот раз не в программном коде метода main.

class Exc1 {
static void subroutine() {
int d = 0;                              
int a= 10 / d;
}
public static void main(String args[]) {
Exc1 .subroutine();
}
}

Вывод этой программы показывает, как обработчик исключений исполняющей системы Java выводит содержимое всего стека вызовов.

С:> java Excl
java.lang.ArithmeticException: / деление на ноль
at Excl.subroutine(Excl.java:4)
at Excl.main(Excl.java:7)

Оглавление книги


Генерация: 1.332. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз