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

Содержание


Презентации» Образование» Обработка исключительных ситуаций
Обработка исключительных ситуацийВиды ошибокПримерОбщее понятие исключительной ситуацииОбщее понятие исключительной ситуацииМеханизм обработки исключений
 Для реализации механизма обработки исключений в язык Си++Try и catch
 Основу обработки исключительных ситуаций в C# составляет параПояснения
 Выполняется код в блоке try, и, если в нем происходитНесколько блоков catch
  try
 {
   //блок1
 }
 catchТипы исключений
 Exception – базовый тип всех исключений. Блок catch, вПример 1 – деление на 0
 namespace ConsoleApplication1
 {
  Пример 1 – деление на 0
 // Обрабатываем исключение возникающее приПример 1 -деление на 0Пример 2 –длина строки
 Но язык C# также позволяет генерировать исключенияПример 2 длина строки
 static void Main(string[] args)
 {
  Пример 3 формат ввода
 static void Main(string[] args) {    stringБлок finally
 Оператор try-catch также может содержать блок finally. Особенность блокаБлок finally
 Выполнение кода программы в блоке finally происходит в последнююПример 4 – открытие файла



Слайды и текст этой презентации
Слайд 1
Описание слайда:
Обработка исключительных ситуаций


Слайд 2
Описание слайда:
Виды ошибок

Слайд 3
Описание слайда:
Пример

Слайд 4
Описание слайда:
Общее понятие исключительной ситуации

Слайд 5
Описание слайда:
Общее понятие исключительной ситуации

Слайд 6
Описание слайда:
Механизм обработки исключений Для реализации механизма обработки исключений в язык Си++ введены следующие три ключевых (служебных) слова:  try  (контролировать),  catch  (ловить),  throw  (генерировать, порождать). Блоки try инкапсулируют код, формирующий часть нормальных действий программы, которые потенциально могут столкнуться с серьезными ошибочными ситуациями. Блоки catch инкапсулируют код, который обрабатывает ошибочные ситуации, происходящие в коде блока try. Это также удобное место для протоколирования ошибок. try {   //блок кода, в котором возможно исключение } catch ([тип исключения] [имя]) {   //блок кода – обработка исключения }

Слайд 7
Описание слайда:
Try и catch Основу обработки исключительных ситуаций в C# составляет пара ключевых слов try и catch. Эти ключевые слова действуют совместно и не могут быть использованы порознь. try { // Блок кода, проверяемый на наличие ошибок. } catch (ExcepType1 exOb) { // Обработчик исключения типа ExcepType1. } catch (ExcepType2 exOb) { // Обработчик исключения типа ExcepType2. } ...

Слайд 8
Описание слайда:
Пояснения Выполняется код в блоке try, и, если в нем происходит исключение типа, соответствующего типу, указанному в catch, то управление передается блоку catch. При этом, весь оставшийся код от момента выбрасывания исключения до конца блока try не будет выполнен. После выполнения блока catch, оператор try-catch завершает работу. Указывать имя исключения не обязательно. Исключение представляет собою объект, и к нему мы имеем доступ через это имя. С этого объекта мы можем получить, например, стандартное сообщение об ошибке (Message). В этом объекте хранится детальная информации об исключении. Если тип выброшенного исключения не будет соответствовать типу, указанному в catch – исключение не обработается, и программа завершит работу аварийно.

Слайд 9
Описание слайда:
Несколько блоков catch try { //блок1 } catch (FormatException) { //блок-обработка исключения 1 } catch (FileNotFoundException) { //блок-обработка исключения 2 } В зависимости от того или другого типа исключения в блоке try, выполнение будет передано соответствующему блоку catch.

Слайд 10
Описание слайда:
Типы исключений Exception – базовый тип всех исключений. Блок catch, в котором указан тип Exception будет «ловить» все исключения. FormatException – некорректный формат операнда или аргумента (при передаче в метод). NullReferenceException - В экземпляре объекта не задана ссылка на объект, объект не создан IndexOutOfRangeException – индекс вне рамок коллекции FileNotFoundException – файл не найден. DivideByZeroException – деление на ноль

Слайд 11
Описание слайда:
Пример 1 – деление на 0 namespace ConsoleApplication1 { class Program { static int MyDel(int x, int y) { return x / y; } static void Main() { try { Console.Write("Введите x: "); int x = int.Parse(Console.ReadLine()); Console.Write("Введите y: "); int y = int.Parse(Console.ReadLine()); int result = MyDel(x, y); Console.WriteLine("Результат: " + result); }

Слайд 12
Описание слайда:
Пример 1 – деление на 0 // Обрабатываем исключение возникающее при делении на ноль catch (DivideByZeroException) { Console.WriteLine("Деление на 0 detected!!!\n"); Main(); } // Обрабатываем исключение при неккоректном вводе числа в консоль catch (FormatException) { Console.WriteLine("Это НЕ число!!!\n"); Main(); } Console.ReadLine(); } } }

Слайд 13
Описание слайда:
Пример 1 -деление на 0

Слайд 14
Описание слайда:
Пример 2 –длина строки Но язык C# также позволяет генерировать исключения вручную с помощью оператора throw. То есть с помощью этого оператора мы сами можем создать исключение и вызвать его в процессе выполнения. В программе происходит ввод строки, и мы хотим, чтобы, если длина строки будет больше 6 символов, возникало исключение:

Слайд 15
Описание слайда:
Пример 2 длина строки static void Main(string[] args) { try { Console.Write("Введите строку: "); string message = Console.ReadLine(); if (message.Length > 6) { throw new Exception("Длина строки больше 6 символов"); } } catch (Exception e) { Console.WriteLine($"Ошибка: {e.Message}"); } Console.Read(); }

Слайд 16
Описание слайда:
Пример 3 формат ввода static void Main(string[] args) {    string result = "";    Console.WriteLine("Введите число:");    try    {      int a = Convert.ToInt32(Console.ReadLine()); //вводим данные, и конвертируем в целое число      result = "Вы ввели число " + a;    }    catch (FormatException)    {      result = "Ошибка. Вы ввели не число";    }    Console.WriteLine(result);    Console.ReadLine(); }

Слайд 17
Описание слайда:
Блок finally Оператор try-catch также может содержать блок finally. Особенность блока finally в том, что код внутри этого блока выполнится в любом случае, в независимости от того, было ли исключение или нет. try {    //блок1 } catch (Exception) {    //обработка исключения } finally {   //блок кода, который выполнится обязательно }

Слайд 18
Описание слайда:
Блок finally Выполнение кода программы в блоке finally происходит в последнюю очередь. Сначала try затем finally или catch-finally (если было исключение). Обычно, он используется для освобождения ресурсов. Классическим примером использования блока finally является закрытие файла. Finally гарантирует выполнение кода, несмотря ни на что. Даже если в блоках try или catch будет происходить выход из метода с помощью оператора return – finally выполнится.

Слайд 19
Описание слайда:
Пример 4 – открытие файла


Скачать презентацию на тему Обработка исключительных ситуаций можно ниже:

Похожие презентации