Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 79

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 73 74 75 76 77 78 < 79 > 80 81 82 83 84 85 .. 404 >> Следующая


•try block reached.');

Console.WriteLine('ThrowException(\'index\") called.¦);

ThrowException('index');

)

catch

(

Console.WriteLine("ThrowException(\'nested indexN’) general"

+ ' catch block reached.*);

throw; .

)

finally

{

Console.WriteLine('ThrowException(\'nested indexN*) finally"

+ ' block reached.');

)
158

Глава 1

то выполнение этой программы сначала продолжится выполнением блока finally, изображенного здесь, а затем блока Main<), в котором будет обнаружено совпадение. В результате выходной поток изменится следующим образом:

На этом рисунке можно заметить дополнительные строки, выведенные из функции Main(), поскольку исключительная ситуация System.IndexOutOfRangeException перехватывается именно в этой функцни.

Эта глава посвящена преимущественно способам, позволяющим производить отладку приложений. Таких способов несколько, и большинство из них доступно независимо от типа создаваемого приложения.

Были рассмотрены следующие темы:

? Использование функций Debug.WriteLine() и Trace.WriteLine()

для вывода текста ? окно Output, .

? Режим останова и способы перехода в него, включая изменяемые точки останова.

? Окна в VS, содержащие отладочную информацию.

? Пошаговое выполнение программ,

О Обработка исключительных ситуаций с помощью конструкции try...catch,..finally.

Теперь вы познакомились со всем, что может потребоваться для создания простых консольных приложений, включая методы их отладки. В следующей части этой книги мы нерейдем к рассмотрению объектно-ориентированного программирования.

1. “Использование функции Trace.WriteLineо более предпочтительно, чем использование функции Debug.WriteLine(>, поскольку второй вариант работает только при построении отладочной версии". Согласны ли вы с этим утверждением? Почему?

Итоги

Упражнения
Отладка и обработка ошибок_________________________________________________________¦_________159

2. Напишите программу для простого приложения, в котором содержится цикл, генерирующий ошибку после 5000 итераций. Используйте точку останова для перехода в режим останова непосредственно перед возникновением ошибки на 5000-й итерации.

{Подсказка: наиболее простой способ сгенерировать ошибку —

это попытаться получить доступ к несуществующему элементу массива, например, к myArray [ЮОО] для массива, содержащего 100 элементов.)

3. “Блоки finally выполняются только в том случае, если

не выполняется блок catch”. Верно ли данное утверждение?

4. Воспользовавшись перечислимым типом данных orientation, описанным ранее, напишите приложение, которое использует Structured Exception Handling (SEH — структурированную обработку исключительных ситуаций) для перевода переменной типа byte

в переменную типа orientation безопасным способом.

Обратите внимание, что вы можете форсировать возникновение исключительных ситуаций с помощью ключевого слова checked, пример использования которого приводится ниже. Эту часть кода вы должны использовать в своем приложении:

>num irientation ; byte .

(

north = 1, south ¦ 2, east - 3, west ¦ 4

niyDirection - checked ((orientation) my Byte) >
Введение в объектно-ориентированное программирование

В предыдущих главах мы рассмотрели синтаксис языка C# и основы программирования на нем. Кроме того, мы научились собирать работоспособные консольные приложения. Однако для того, чтобы получить доступ ко всему потенциалу C# и .NET Framework, необходимо научиться использовать методы объектно-ориентированного программирования (ООП). На самом деле некоторые из этих методов уже применялись нами, однако чтобы не усложнять жизнь, мы не акцентировали на этом внимание.

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

Для начала рассмотрим базовые понятия ООП, которые и ответят на самый фундаментальный вопрос: “Что такое объект?". Очень скоро вы увидите, что существует весьма большое количество терминов, связанных с ООП; поначалу это может показаться достаточно сложным, хотя используемый язык будет подробно разъяснять. Вы также убедитесь, что применение ООП требует нового взгляда на программирование.

Помимо обсуждения общих принципов, лежащих в основе ООП, мы рассмотрим одну область, для которой исчерпывающее понимание ООП является необходимым: приложения Windows Forms. Этот тип приложений (т. е. приложения, в которых используется среда Windows и такие возможности этой среды, как меню, кнопки н т. п.) оставляет широкий простор для описания объектов, н мы постараемся эффективно проиллюстрировать принципы ООП в среде Windows Forms.

Обратите внимание, что ООП в том виде, в котором оно представлено в настоящей главе, на самом деле является ООП для .NET, и поэтому некоторые из способов, обсуждаемых здесь, неприменимы к другим разновидностям среды ООП.
Предыдущая << 1 .. 73 74 75 76 77 78 < 79 > 80 81 82 83 84 85 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.