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

В языке Java предусмотрена обработка ошибочных ситуаций, связанных, как правило, с выполнением таких системных действий, как ввод-вывод через файлы, запуск приложений, отличных от Java, чтение портов и пр. И даже мы встречались с такими ситуациями уже не раз. Рассмотрим следующий пример из того, что приводилось ранее (см. листинг 1.7).

if (e.getSource()==bread)

{

try

{

FileInputStream is=new FileInputStream("dl.dat");

DataInputStream dis=new DataInputStream(is); tfi.setText(dis.readUTF()); // прочитали строку из файла dis.close();

}

catch(IOException err)

}

}

В блоке try осуществляется создание потоковой переменной по имени is класса Fiieinputstream, па основе которой далее создается объектная переменная dis, позволяющая читать информацию из файла по команде dis. readUTF ().

Операция чтения связана с выполнением системных действий, которые могут привести к ошибке ввода-вывода. Поэтому блок catch выполняет перехват именно этого типа ошибок:

catch(IOException err)

{ JOptionPane.showMessageDialog(null,"Error "+err); }

Класс ошибок ввода-вывода называется ioException. Если при чтении/записи из файла возникнет ошибка класса ioException, то она будет перехвачена данным блоком catch, что приведет к выполнению единственного оператора внутри этого блока: JOptionPane.showMessageDialog(null,"Error"+err);

Данный оператор просто выведет сообщение об ошибке в диалоговом окне. Наиболее общим классом ошибок (исключений) является класс Exception. Этот класс позволяет перехватывать вообще все исключения, так что предыдущий пример можно было переписать таким образом:

if (e.getSource()==bread)

{

try

{

FileInputStream is=new FileInputStream("dl.dat");

DataInputStream dis=new DataInputStream(is); tfi.setText(dis.readUTF()); // Прочитали строку из файла dis.close();

}

catch(Exception err) // Здесь изменен класс исключений { JOptionPane.showMessageDialog(null,"Error"+err);     }

По мере рассмотрения практических занятий мы будем вводить новые классы исключений.

Источник: Герман О. B., Герман Ю. О., Программирование на Java и C# для студента. — СПб.: БХВ-Петербург, 2005. — 512 c.: ил.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100