Основы программирования — второй семестр 08-09; Михалкович С.С.; VII часть — различия между версиями

Материал из Вики ИТ мехмата ЮФУ
Перейти к: навигация, поиск
(Новая: == Исключения == === Введение. Что нам уже известно об исключениях === Впервые мы столкнулись с исключения...)
 
(Иерархия исключений в .NET)
Строка 10: Строка 10:
  
 
=== Иерархия исключений в .NET ===
 
=== Иерархия исключений в .NET ===
 +
Стандартные исключения связаны отношением [[Основы программирования — второй семестр 08-09; Михалкович С.С.; VI часть | наследования]]. Базовым классом для всех исключений является класс <tt>'''Exception'''</tt>, который находится в пространстве имен <tt>System</tt>.
 +
 +
<xh4> Классы исключений в .NET </xh4>
 +
Требуется подключить пространство имен <tt>System</tt>.
 +
'''Exception'''
 +
    '''ApplicationException'''
 +
        Все пользовательские исключения
 +
    '''SystemException'''
 +
        '''AccessViolationException''' (несанкционированный доступ к памяти)
 +
        '''ArgumentException'''
 +
            '''ArgumentNullException'''
 +
            '''ArgumentOutOfRangeException'''
 +
        '''ArithmeticException'''
 +
            '''DivideByZeroException''' (целочисленное деление на 0)
 +
        '''IndexOutOfRangeException'''
 +
        '''InvalidCastException''' (явное приведение к неправильному типу)
 +
        '''FormatException'''
 +
        '''NullReferenceException'''
 +
        '''OutOfMemoryException'''
 +
        '''StackOverflowException'''
 +
        '''KeyNotFoundException''' (пространство имен System.Collections.Generic)
 +
        '''IOException''' (пространство имен System.IO)
 +
            '''FileNotFoundException'''
 +
            '''EndOfStreamException'''
  
 
=== Секции обработки исключений в блоке try ===
 
=== Секции обработки исключений в блоке try ===
  
 
=== Создание индивидуального класса исключения. Генерация исключений при обработке исключений ===
 
=== Создание индивидуального класса исключения. Генерация исключений при обработке исключений ===

Версия 09:39, 21 мая 2009

Исключения

Введение. Что нам уже известно об исключениях

Впервые мы столкнулись с исключениями в начале курса, когда изучали оператор ввода и обработку ошибок ввода с помощью блока try..except.

Позже, при работе с файлами, возник термин «исключение». Мы узнали, как обрабатывать исключения с помощью оператора try..except и познакомились с оператором try..finally.

И, наконец, мы научились генерировать собственные исключения.

Теперь пришло время подробнее изучить исключения.

Иерархия исключений в .NET

Стандартные исключения связаны отношением наследования. Базовым классом для всех исключений является класс Exception, который находится в пространстве имен System.

<xh4> Классы исключений в .NET </xh4> Требуется подключить пространство имен System.

Exception
    ApplicationException
        Все пользовательские исключения
    SystemException
        AccessViolationException (несанкционированный доступ к памяти)
        ArgumentException
           ArgumentNullException
           ArgumentOutOfRangeException
        ArithmeticException
           DivideByZeroException (целочисленное деление на 0)
        IndexOutOfRangeException
        InvalidCastException (явное приведение к неправильному типу)
        FormatException 
        NullReferenceException
        OutOfMemoryException
        StackOverflowException
        KeyNotFoundException (пространство имен System.Collections.Generic)
        IOException (пространство имен System.IO)
           FileNotFoundException
           EndOfStreamException

Секции обработки исключений в блоке try

Создание индивидуального класса исключения. Генерация исключений при обработке исключений