Обработка исключительных ситуаций
Каждой исключительной ситуации поставлен в соответствие некоторый класс. Если подходящего класса не существует, то он может быть создан разработчиком. Исключения являются наследниками суперкласса Throwableи его подклассов Error и Exception из пакета java.lang.
Особенностью исключений в Java является то, что при возникновении исключительной ситуации всегда генерируется объект соответствующего типа, который должен быть перехвачен и обработан определенным для этого блоком кода. Кроме того, при создании метода можно сделать указание программисту включить в код обработку исключений, которые может генерировать этот метод.
Рис.1. Иерархия классов исключительных ситуаций
Обычно используется один из трех способов обработки исключений:
– перехват и обработка исключения в блоках try - catch;
– объявление исключений в секции throws метода и передача вызывающему методу;
перехват исключения, преобразование его к другому классу и повторный вызов.
Рассмотрим первый подход на следующем примере. При вводе/выводе используется класс IOException. Например:
public void doRead(){
try{
System.in.read(buffer);
}
catch (IOException e) {
String err = e.toString();
System.out.println(err);
}
}
Исключение IOException генерируется методом read():
Дата добавления: 2015-04-05; просмотров: 1054;