Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник 34.docx
Скачиваний:
25
Добавлен:
30.04.2022
Размер:
74.1 Кб
Скачать

Лабораторная работа № 3 Наследование и полиморфизм в языке c#

Цель работы: научиться использовать основные средства ООП языка C# (наследование, полиморфизм, абстрактные функции).

Задание: создать абстрактный базовый класс «многоугольник», содержащий свойство, возвращающее количество его сторон, а также виртуальный метод вычисления площади многоугольника. Реализовать классы-наследники «треугольник», «прямоугольный треугольник», «прямоугольник», «квадрат», реализующие методы и свойства базового класса.

Инструкции к выполнению:

- Каждый многоугольник задается длиной своих сторон. Каждый класс должен содержать свойства, возвращающие длины сторон.

- Значение длин сторон должно задаваться в конструкторе класса.

- Наследование реализовать способом, позволяющим повторно использовать уже написанный код.

Лабораторная работа № 4 Коллекции в языке c#

Цель работы: получить представление об основных способах работы с коллекциями объектов языка C#.

Задание: Используя встроенный класс ArrayList создать массив объектов, описывающий события аудита операционной системы. Создать три класса объектов аудита: событие входа в систему (содержит дату и время, имя пользователя, результат входа), события доступа к ресурсу (содержит дату и время, имя пользователя, название ресурса), события выхода из системы (содержит дату и время, имя пользователя). Предусмотреть возможность вывода информации о событиях определенного типа, находящихся в массиве.

Инструкции к выполнению:

- Создать абстрактный базовый класс события

- Поиск объектов производить на основе механизмов определения типов

Теоретическая справка

Для работы с контейнерами необходимо подключить пространство имен System.Collections:

В массив ArrayList в отличие от обычного массива, можно записывать данные любого типа.

Массив ArrayList создается при помощи конструктора

ArrayList myList = new ArrayList();

Здесь не указываеется начальная длина массива, по умолчанию она равна 16.

Преимущество массива ArrayList состоит в том, что не нужно беспокоиться о размере массива, по мере добавления элементов размер будет увеличиваться автоматически.

Для добавления элементов в массив ArrayList преднозначен метод Add. После добавления метод Add возвращает индекс нового элемента.

Для чтения элементов понадобится метод Count – определяет размер массива.

For (int i=0; i<myList.count; i++)

{

System.Console.WriteLine(“{0}”,myList[i]);

}

При помощи данной конструкции мы выведем все  элементы массива на экран.

Для удаления элементов из массива используется несколько методов:

  1. МетодClear удаляет все элементы из массива. (myList.Clear)

  2. Метод Remowe удаляет из массива заданный элемент (myList.Remowe(“Hello”) – удалит из массива ячейку со словом Hello)

  3. Метод RemoweAt удаляет элемент по индексу (myList.RemoweAt(2) – удалит элемент с индексом равным 2)

  4. Метод RemoweRange удаляет диапазон элементов расположенных рядом (myList.RemoweRange(1,2) – удалит элементы с индексами от 1 до 2);

Для сортировки используется несколько перегруженных методов Sort.

Для изменения расположения элементов на обратное используется метод Rewerse.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]