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

Нажмите для полного просмотра!
Обработка исключительных ситуаций, слайд №1Обработка исключительных ситуаций, слайд №2Обработка исключительных ситуаций, слайд №3Обработка исключительных ситуаций, слайд №4Обработка исключительных ситуаций, слайд №5Обработка исключительных ситуаций, слайд №6Обработка исключительных ситуаций, слайд №7Обработка исключительных ситуаций, слайд №8Обработка исключительных ситуаций, слайд №9Обработка исключительных ситуаций, слайд №10Обработка исключительных ситуаций, слайд №11Обработка исключительных ситуаций, слайд №12Обработка исключительных ситуаций, слайд №13Обработка исключительных ситуаций, слайд №14Обработка исключительных ситуаций, слайд №15Обработка исключительных ситуаций, слайд №16Обработка исключительных ситуаций, слайд №17Обработка исключительных ситуаций, слайд №18Обработка исключительных ситуаций, слайд №19

Вы можете ознакомиться и скачать презентацию на тему Обработка исключительных ситуаций. Доклад-сообщение содержит 19 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





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

Слайд 2





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

Слайд 3





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

Слайд 4





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

Слайд 5





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

Слайд 6





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

Слайд 7





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

Слайд 8





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

Слайд 9





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

Слайд 10





Типы исключений
Exception – базовый тип всех исключений. Блок catch, в котором указан тип Exception будет «ловить» все исключения.
FormatException – некорректный формат операнда или аргумента (при передаче в метод).
NullReferenceException - В экземпляре объекта не задана ссылка на объект, объект не создан
IndexOutOfRangeException – индекс вне рамок коллекции
FileNotFoundException – файл не найден.
DivideByZeroException – деление на ноль
Описание слайда:
Типы исключений 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);
            }
Описание слайда:
Пример 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();
        }
    }
}
Описание слайда:
Пример 1 – деление на 0 // Обрабатываем исключение возникающее при делении на ноль catch (DivideByZeroException) { Console.WriteLine("Деление на 0 detected!!!\n"); Main(); } // Обрабатываем исключение при неккоректном вводе числа в консоль catch (FormatException) { Console.WriteLine("Это НЕ число!!!\n"); Main(); } Console.ReadLine(); } } }

Слайд 13





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

Слайд 14





Пример 2 –длина строки
Но язык C# также позволяет генерировать исключения вручную с помощью оператора throw. То есть с помощью этого оператора мы сами можем создать исключение и вызвать его в процессе выполнения.
В программе происходит ввод строки, и мы хотим, чтобы, если длина строки будет больше 6 символов, возникало исключение:
Описание слайда:
Пример 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();
}
Описание слайда:
Пример 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();
}
Описание слайда:
Пример 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
{
  //блок кода, который выполнится обязательно
}
Описание слайда:
Блок finally Оператор try-catch также может содержать блок finally. Особенность блока finally в том, что код внутри этого блока выполнится в любом случае, в независимости от того, было ли исключение или нет. try {    //блок1 } catch (Exception) {    //обработка исключения } finally {   //блок кода, который выполнится обязательно }

Слайд 18





Блок finally
Выполнение кода программы в блоке finally происходит в последнюю очередь. Сначала try затем finally или catch-finally (если было исключение).

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

Слайд 19





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



Похожие презентации
Mypresentation.ru
Загрузить презентацию