Иллюстрированный самоучитель по VB.NET


Подготовка к структурной обработке исключений - часть 2


Console.WriteLine("ERROR")

End Try

Console.WriteLine("Press enter to end")

Console. ReadLine()

End Sub

Sub ProcessFiletByVal fileName As String)

' Обработка файла

Console.WriteLine("Am processing " & fName)

End Sub

End Module

Секция Try блока Try-Catch содержит «правильный» код — в данном примере это вызов ProcessFile (вызов Environment.GetCommandLingArgs() заключен в секцию Try, потому что он тоже может инициировать исключение — например, если ваша программа работает на платформе, не поддерживающей передачи аргументов в командной строке).

Секция Catch в блоке Try-Catch необходима, потому что некоторые невнимательные пользователи не обращают внимания на указания. Если в приведенном фрагменте пользователь забывает ввести имя файла, программа пытается обратиться к имени файла, что приводит к исключению IndexOutOfRangeExceptl on, поскольку элемент с указанным индексом отсутствует в файле. При возникновении исключения управление передается в дополнительную ветвь, то есть в блок Catch, который в нашем примере просто выводит строку ERROR в консольном окне.

Из блока Try, как и из других управляющих конструкций VB .NET (таких, как циклы For и Do), можно выйти немедленно командой Exit Try. Впрочем, применение Exit Try обычно считается проявлением плохого стиля программирования.




- Начало -  - Назад -  - Вперед -



Книжный магазин