|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Задание на лабораторную работу. 1. Ознакомиться с разделом 1, в котором описывается понятие свойства, его разновидности и особенности его объявления и использования1. Ознакомиться с разделом 1, в котором описывается понятие свойства, его разновидности и особенности его объявления и использования. Простые события 1.1. Построить и запустить приложение в соответствии описанием в разделе 1.2. Убедиться в его работоспособности и составить блок-схему алгоритма его функционирования. Опишите программную реализацию процесса генерации события 1.2. Создать приложение, реализующее пример, приведенный в разделе 1.3 и составить блок-схему его функционирования. Особе внимание уделите особенностям добавления и удаления обработчиков события. Опишите процесс подписки реагировать на возникновение события. Многоцелеваяобработка событий 1.3. На основе примера в разделе 1.4 разработать приложение, в котором обработка события осуществляется несколькими функциями-обработчиками. Составить блок-схему работы приложения и описать происходящие в нем процессы. Использование событий в компонентах.NET 1.4. Создать приложение, которое реагирует на нажатие на клавишу. Составить блок-схему работы приложения (раздел 1.5). Описать особенности организации обработки события, возникающего при нажатии на стандартную компоненту в виде клавиши. Классы с большим числом событий 1.5. Создать приложение с объектом, способным генерировать большое количество событий (раздел 1.6). Особое внимание обратить на динамическую организацию хранения событий. Составить блок-схему работы приложения и описать ее. Содержание отчета по лабораторной работе Отчет по лабораторной работе должен содержать: · Титульный лист. · Задание на каждый раздел лабораторной работы. · Листинги программных приложений · Описание работы программ и блок-схемы их функционирования. · Внешний вид созданных приложений.
Вопросы для самопроверки Отметьте истинные высказывания: q класс, обрабатывающий событие, может отсоединить других обработчиков события и полностью определить реакцию на событие; q каждый объект определяет, какой обработчик присоединяется к событию; q метод GetInvocationList не применим к событиям; q все события имеют одну и ту же сигнатуру. q события – это специализированный вариант делегатов; q к каждому событию должен быть присоединен хотя бы один обработчик события; q методы Combine и Remove, наследованные от класса Delegate не применимы к событиям; q допустимо динамическое связывание событий с обработчиками событий. 1. Обработчик события: q всегда принадлежит классу, генерирующему событие; q никогда не принадлежит классу, генерирующему событие; q может принадлежать классу, генерирующему событие; q принадлежит только одному классу, слушающему событие; q может принадлежать многим классам, слушающим события. 2. События: q все события имеют одинаковую сигнатуру из двух аргументов с одними и теми же типами; q все события имеют сигнатуру из двух аргументов, но с отличающимися типами; q все события, не имеющие собственных аргументов, передаваемых обработчику, соответствуют стандартному встроенному делегату EventHandler; q для класса с большим числом событий целесообразно применять динамическое связывание; q для связывания событий с обработчиком можно применять только операцию +=. 3. Объявление события в классе может представлять собой: q объявление метода класса; q объявление поля класса; q объявление процедуры-свойства класса с методами get и set; q объявление процедуры-свойства класса с методами add и remove. 4. Объекты одного класса: q имеют одинаковый набор событий; q в процессе вычислений возникает одинаковый набор событий; q в процессе вычислений возникает набор событий, характерный для объекта; q в разных сеансах работы возникает одинаковый набор событий; q в разных сеансах работы возникают разные события. 5. Объект одного класса: q является классом, которому принадлежат все события; q является абстрактным классом и не может иметь экземпляров; q является родительским классом для событий, не имеющих собственных аргументов; q является потомком класса Delegate; q накладывает ограничения на сигнатуру события. 6. Процедура, в которой зажигается событие: q передает обработчику событий входные аргументы и продолжает свою работу; q передает обработчику событий входные аргументы и ждет окончания работы первого обработчика, связанного с событием; q передает обработчику событий входные аргументы и ждет окончания работы всего списка обработчиков, связанного с событием; q может получить от обработчиков выходные аргументы и использовать их в своей работе. 7. Все аргументы события принадлежат: q классу EventArgs; q классу EventArgs, за исключением аргумента, задающего объект, зажигающий событие; q потомку класса EventArgs; q потомку класса EventArgs за исключением аргумента, задающего объект, зажигающий событие; q возможно разным классам. Контрольные вопросы 1. Что понимается под термином «событие»? 2. Являются ли события членами классов? 3. Какое ключевое слово языка C# используется для описания событий? 4. На каком механизме языка C# основана поддержка событий? 5. Приведите синтаксис описания события в общем виде. Проиллюстрируйте его фрагментом программы на языке C#. 6. Что понимается под термином «широковещательное событие»? 7. На основе какого механизма языка C# строятся широковещательные события? 8. Приведите синтаксис описания широковещательного события в общем виде. Проиллюстрируйте его фрагментом программы на языке C#. 9. Что понимается под термином «исключительная ситуация (исключение)»?
Литература:
1. Биллиг В.А. http://www.INTUIT.ru: Курс: Основы программирования на C#. 2. К.Ватсон и др. С#. Изд-во Лори. 2005 г., 879 с. 3. Г. Шилдт. Полный справочник по С#.: Пер. с англ. — М.: Издательский дом "Вильяме", 2004. — 752 с. 4. Медведев В.И. Особенности объектно-ориентированного программирования на C++/CLI, C# и Java. 2-е изд., испр. и доп. - Казань: РИЦ «Школа», 2010.-444 c.: ил. 5. Павловская Т. А. С#. Программирование на языке высокого уровня. Учебник для вузов. — СПб.: Питер, 2009. — 432 с: ил. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.) |