Могут ли быть выполнены несколько блоков catch в одном программном блоке?

Этот вопрос проверяет понимание того, как работает обработка исключений в C# с использованием нескольких блоков catch.

Короткий ответ

В C# можно использовать несколько блоков catch, но каждый блок обрабатывает только одно исключение. Если исключение соответствует первому блоку catch, остальные блоки игнорируются.

Длинный ответ

В C# можно использовать несколько блоков catch, чтобы обрабатывать разные типы исключений. Каждый блок catch проверяется по очереди и выполняется только в случае, если исключение соответствует его типу.

 

Обработка исключений:

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

- Если исключение не соответствует первому блоку catch, проверяется следующий, и так далее.

 

Множественные блоки catch:

- Можно использовать несколько блоков catch для обработки различных типов исключений.

 

Пример:

try
{
    int[] numbers = new int[3];
    numbers[5] = 10;  // Генерирует исключение IndexOutOfRangeException
}
catch (IndexOutOfRangeException ex)
{
    Console.WriteLine("Ошибка индекса: " + ex.Message);
}
catch (Exception ex)
{
    Console.WriteLine("Общее исключение: " + ex.Message);
}

В этом примере исключение IndexOutOfRangeException будет обработано первым блоком catch, и второй блок игнорируется.

Уровень

  • Рейтинг:

    1

  • Сложность:

    4

Навыки

  • C#

Ключевые слова

Подпишись на C# Developer в телеграм