Презентация на тему Исключения в ЯВУ
Оценка 4.7

Презентация на тему Исключения в ЯВУ

Оценка 4.7
Презентации учебные
pptx
информатика
Взрослым
18.10.2019
Презентация на тему Исключения в ЯВУ
Презентация по дисциплине Информатика и программирование на тему Исключения на ЯВУ. В данной презентации рассматриваются типы и подклассы исключений в ЯВУ, главный класс создания исключений, генерирование исключений через использование оператора throws , throw, а также исследуются блоки try/catch, finally и т.д.
653751.pptx

Презентация на тему Исключения в ЯВУ

Презентация на тему Исключения в ЯВУ
Исключения в Java

Презентация на тему Исключения в ЯВУ

Презентация на тему Исключения в ЯВУ
Исключения – это механизм взаимодействия между кодом, приведшим к ошибке, и кодом, обрабатывающим ошибку Исключение выбрасывается (throw), когда возникает некоторая ситуация. Оно перехватывается в программе (catch). В противном случае оно  обрабатывается  по умолчанию Throwable Error непроверяемые Exception Error – фатальные ошибки RuntimeExcaption – компилятор не  требует их обязательной обработки Exception – компилятор проверяет  предусмотрена ли обработка ошибок RuntimeException непроверяемые Все прочие проверяемые

Презентация на тему Исключения в ЯВУ

Презентация на тему Исключения в ЯВУ
Причины возникновения исключений • Попытка выполнить некорректное выражение. Например, деление на ноль, или  обращение к объекту по ссылке, равной null, попытка использовать класс, описание  которого (class­файл) отсутствует, и т.д. В таких случаях всегда можно точно  указать, в каком месте произошла ошибка, ­ именно в некорректном выражении.  • Выполнение оператора throw Этот оператор применяется для явного порождения  ошибки. Здесь тоже можно указать место возникновения исключительной  ситуации.  • Асинхронные ошибки во время исполнения программы.  Все ошибки делятся на:   синхронные – возможно найти точное место в коде, которое является причиной  возникновения исключительной ситуации   асинхронные ­ гораздо сложнее в обнаружении и исправлении. Обычному  разработчику очень трудно выявить причины сбоев в виртуальной машине. Это  могут быть ошибки создателей JVM, несовместимость с операционной системой,  аппаратный сбой и  т.д.

Презентация на тему Исключения в ЯВУ

Презентация на тему Исключения в ЯВУ
Обработка исключительных ситуаций Конструкция try-catch try {    охраняемый блок } catch(SomeExceptionClass e) {   ...} . . . catch(AnotherExceptionClass e) {   ...}  Конструкция try-catch-finally try {    byte [] buffer = new byte[128];    FileInputStream fis =   new FileInputStream("file.txt");          while(fis.read(buffer) > 0) {      ... обработка данных ...   } } catch(IOException es) {      ... обработка исключения ... } finally {          fis.flush();   fis.close(); }

Презентация на тему Исключения в ЯВУ

Презентация на тему Исключения в ЯВУ
Оператор throw Программист сам может явно породить исключительную ситуацию ... public int calculate(int theValue) throws Exception { I f( theValue < 0) { throw new Exception("Параметр для вычисления не должен быть отрицательным"); }}... Можно передать информацию об исключительной ситуации в вызывающий код ... try { ... } catch(IOException ex) { ... // Обработка исключительной ситуации ... // Повторное возбуждение исключительной ситуации throw ex; }

Презентация на тему Исключения в ЯВУ

Презентация на тему Исключения в ЯВУ
Преимущества исключений • Разделение кода и обработки ошибок • Группирование ошибок по типам • Раскрутка стека method1 {     try {         call method2;     } catch (exception) {         doErrorProcessing;     } } method2 throws exception {     call method3; } method3 throws exception {     call readFile; } readFile {     try {         open the file;         determine its size;         allocate that much memory;         read the file into memory;         close the file;     } catch (fileOpenFailed) {         doSomething;     } catch (sizeDeterminationFailed) {         doSomething;     } catch (memoryAllocationFailed) {         doSomething;     } catch (readFailed) {         doSomething;     } catch (fileCloseFailed) {         doSomething;     } }

Презентация на тему Исключения в ЯВУ

Презентация на тему Исключения в ЯВУ
Создание классов исключений public class UserException extends Exception { public UserException() { super(); } public UserException(String descry) { super(descry); } } Выбрасывание исключения: throw new UserException( "Дополнительное описание");

Презентация на тему Исключения в ЯВУ

Презентация на тему Исключения в ЯВУ
Выбрасывание исключений class ExceptThrow { public static void main(String[] args)throws MyException {int id = -1; if (id<1)throw new MyException(); System.out.println("Никогда не выполнится"); } } class MyException extends Exception { MyException(){System.out.println("Id must be natural!");} }

Презентация на тему Исключения в ЯВУ

Презентация на тему Исключения в ЯВУ
Перехват исключений              } catch(MyException e){                           System.out.println("Mistake");              }  finally    {         System.out.println("Id="+id); class ExceptThrow {         public static void main(String[] args)         {                 int id = ­1;              try { if (id<1)throw new MyException();              }              System.out.println("Finished");         } } class MyException extends Exception { MyException(){System.out.println("Id must be  natural!");} }

Презентация на тему Исключения в ЯВУ

Презентация на тему Исключения в ЯВУ
Переопределение методов и исключений При переопределении метода список  исключений можно только сужать public class BaseClass{ public void method () throws IOException { ... } } public class LegalOne extends BaseClass { public void method () throws IOException { ... } } public class LegalTwo extends BaseClass { public void method () { ... } } public class LegalTree extends BaseClass { Ошибка!!! public class IllegalOne extends BaseClass {            public void method () throws  IOException,IllegalAccessException  {      ...   } } public class IllegalTwo extends BaseClass {    public void method ()  {      ...      throw new Exception();   } }  Исключение не  указано  public void method () throws IOException, MalformedURLException { ... } } Метод создает исключения, которые  являются подклассами исключения,  возбуждаемого в старом методе
Скачать файл