Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТКП - С# ЛР 2.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
169.98 Кб
Скачать

Блок finally

В блоке try могли быть заняты ресурсы - открыты файлы, захвачены некоторые устройства. Освобождение ресурсов, занятых try-блоком, выполняет finally-блок. Если он присутствует, он выполняется всегда, сразу же после завершения работы try-блока, как бы последний ни завершился.

Завдання до лабораторної роботи

  1. Проработать примеры 1-6, данные в теоретических сведениях. Создать на их основе программы. Получить результаты работы программ и уметь их объяснить. Внести их в отчет с комментариями.

  2. Для предложенной структуры данных разработать абстрактный класс и класс наследник. В классе реализовать несколько конструкторов. Создать методы, работающие с полями класса. Часть из них должны быть виртуальными. Добавить методы-свойства и индексаторы.

  3. Разработать интерфейсные классы, добавляющие некоторые методы работы с объектами класса. Изучить причины возникновения коллизии имен и способы устранения.

  4. Разработать классы исключительных ситуаций и применить их для обработки, возникающих исключений.

  5. Написать демонстрационную программу.

Описания компонентных данных пользовательских классов:

1. СТУДЕНТ : ФИО, курс, пол, оценки.

2. СЛУЖАЩИЙ: имя, возраст, рабочий стаж, должности.

3. КАДРЫ: ФИО, номер цеха, разряд, специальности.

4. ИЗДЕЛИЕ: название, шифр, количество, комплектация.

5. ПЕЧАТНОЕ ИЗДАНИЕ: название, ФИО автора, стоимость, оглавление.

6. ЭКЗАМЕН: ФИО студента, дата, оценка, перечень вопросов.

7. АДРЕС: город, улица, номер дома, список жильцов.

8. ТОВАР: название, артикул, стоимость, даты (изготовление, срок реализации)

9. ЦЕХ: название, начальник, кол-во рабочих, перечень номенклатуры выпускаемых изделий.

10. ПЕРСОНА: ФИО, возраст, пол, список увлечений.

11. АВТОМОБИЛЬ: марка, мощность, стоимость, даты ремонта.

12. СТРАНА: название, форма правления, площадь, список областей.

13. ЖИВОТНОЕ: вид, класс, средний вес, места обитания.

14. КОРАБЛЬ: название, водоизмещение, тип, список категорий кают.

15. КАРТИНА: ФИО автора, название, жанр, список владельцев.

16. МУЗЕЙ: Название, адрес, ФИО директора, кол-во и названия залов.

17. КНИГА: Название, жанр, кол-во страниц, список авторов.

18. САМОЛЕТ: ФИО конструктора, марка, год выпуска, кол-во мест, список городов рейса.

Вопросы к защите лабораторной работы

  1. К какой группе типов переменных относятся перечисления и структуры?

  2. Описание перечисления и его назначение?

  3. Числовые значения констант перечисления по умолчанию?

  4. Использование перечислений в программах.

  5. Описание структуры.

  6. Роль конструктора в структуре?

  7. Обращение к элементам структуры.

  8. Упаковка и распаковка структуры.

  9. Что такое класс? Для чего описываются классы?

  10. Чем отличается класс от структуры?

  11. Модификаторы доступа к полям и методам класса.

  12. Модификаторы доступа к классам.

  13. Что такое экземпляр класса? Как он создается в C#?

  14. Для чего в классе определяется конструктор? Сколько может быть конструкторов в классе? Когда вызывается конструктор?

  15. Как можно обратиться к полям и методам класса?

  16. Методы-свойства класса. Назначение и описание.

  17. Статические поля и методы класса. Назначение, описание и вызов статических методов.

  18. Индексаторы. Назначение и описание.

  19. Наследование в С#.

  20. Изменение методов родителя в классе наследника.

  21. Конструкторы при наследовании.

  22. Описание абстрактных методов и классов.

  23. Вложенные классы.

  24. Интерфейсы. Назначение и описание.

  25. Наследование в интерфейсах.

  26. Реализация методов интерфейсов в классах.

  27. Коллизия имен в интерфейсах.

  28. Исключения. Обработка исключений в С#.

  29. Создание классов исключений и генерация исключения.