Иллюстрированный самоучитель по Java

Обработка исключительных ситуаций

  • Обработка исключительных ситуаций

    Исключительные ситуации (exceptions) могут возникнуть во время выполнения (runtime) программы, прервав ее обычный ход. К ним относится деление на нуль, отсутствие загружаемого файла, отрицательный или вышедший за верхний предел индекс массива, переполнение выделенной памяти и масса других неприятностей, которые могут случиться в самый неподходящий момент.
  • Блоки перехвата исключения

    Мы можем перехватить и обработать исключение в программе. При описании обработки применяется бейсбольная терминология. Говорят, что исполняющая система или программа "выбрасывает" (throws) объект-исключение.
  • Часть заголовка метода throws

    То обстоятельство, что метод не обрабатывает возникающее в нем исключение, а выбрасывает (throws) его, следует отмечать в заголовке метода служебным словом throws и указанием класса исключения: | private static void f(int n) throws ArithmeticException{ | System.out.println(" 10 / n = " + (10 / n));
  • Оператор throw

    Этот оператор очень прост: после слова throw через пробел записывается объект класса-исключения. Достаточно часто он создается прямо в операторе throw, например: | throw new ArithmeticException(); | Оператор можно записать в любом месте программы.
  • Иерархия классов-исключений

    Все классы-исключения расширяют класс Throwable – непосредственное расширение класса object. | У класса Throwable и у всех его расширений по традиции два конструктора: | Throwable () – конструктор по умолчанию;
  • Порядок обработки исключений

    Блоки catch () {} перехватывают исключения в порядке написания этих блоков. Это правило приводит к интересным результатам. | В листинге 16.2 мы записали два блока перехвата catch () {} и оба блока выполнялись при возникновении соответствующего исключения.
  • Создание собственных исключений

    Прежде всего, нужно четко определить ситуации, в которых будет возникать ваше собственное исключение, и подумать, не станет ли его перехват невольно перехватывать также и другие, не учтенные вами исключения. | Потом надо выбрать суперкласс создаваемого класса-исключения.
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.