Классы с вложением в С#
Разработать консольное или приложение Windows Forms на языке C#, которое решает указанную в вашем варианте задачу. Предусмотреть меню, позволяющее проверить все методы класса. Построить все необходимые диаграммы UML.
Вариант 1. Описать класс «Абонент».
Класс должен включать в себя следующие поля (свойства):
· Фамилия
· Имя
· Отчество
· Прозвище
· Группа (Семья, Друзья, Коллеги, VIP, Бизнес…)
· Дата рождения
· Адрес
· Телефон
· Электронный адрес
· …
Определить конструктор без параметров, конструкторы с параметрами.
Продумать, какие свойства должны быть доступны только для просмотра, а какие – и для изменения значения. Переопределить стандартный метод ToString () для перевода информации об абоненте в строковый формат. Определить методы для сравнения двух абонентов по указанному свойству.
Используя класс «Абонент», описать класс «Записная книжка». Предусмотреть возможность работы с произвольным числом записей, поиска записи по какому-либо признаку (например, по фамилии, дате рождения или номеру телефона), добавления и удаления записей, сортировки по разным полям.
Вариант 2. Описать класс «Студент».
Класс должен включать в себя следующие поля (свойства):
· Фамилия
· Имя
· Отчество
· Дата рождения
· Адрес
· Телефон
· Электронный адрес
· Курс
· Группа
· Номер зачетной книжки
· …
Определить конструктор без параметров, конструкторы с параметрами.
Продумать, какие свойства должны быть доступны только для просмотра, а какие – и для изменения значения. Переопределить стандартный метод ToString () для перевода информации о студенте в строковый формат. Определить методы для сравнения двух студентов по указанному свойству.
Используя класс «Студент», описать класс «Студенческая группа». Предусмотреть возможность работы с переменным числом студентов, поиска студента по какому-либо признаку (например, по фамилии, дате рождения или номеру телефона), добавления и удаления записей, сортировки по разным полям.
Вариант 3. Описать класс «Книга».
Класс должен включать в себя следующие поля (свойства):
· Фамилия автора
· Имя автора
· Отчество автора
· Название книги
· Код
· Год издания
· Количество страниц
· …
Определить конструктор без параметров, конструкторы с параметрами.
Продумать, какие свойства должны быть доступны только для просмотра, а какие – и для изменения значения. Переопределить стандартный метод ToString () для перевода информации о книге в строковый формат. Определить методы для сравнения двух книг по указанному свойству.
Используя класс «Книга», описать класс «Домашняя библиотека». Предусмотреть возможность работы с произвольным числом книг, поиска книги по какому-либо признаку (например, по автору или по году издания), добавления книг в библиотеку, удаления книг из нее, сортировки книг по разным полям.
Вариант 4. Описать класс «Телефон».
Класс должен включать в себя следующие поля (свойства):
· Серийный номер
· Название
· Фирма-производитель
· Тип
· Описание
· Год выпуска
· Гарантийный срок
· Цена
· …
Определить конструктор без параметров, конструкторы с параметрами.
Продумать, какие свойства должны быть доступны только для просмотра, а какие – и для изменения значения. Переопределить стандартный метод ToString () для перевода основной информации о телефоне в строковый формат. Определить методы для сравнения двух телефонов по указанному свойству.
Используя класс «Телефон», описать класс «Магазин_телефонов», содержащий информацию об имеющихся в продаже сотовых телефонах в магазине. Предусмотреть возможность работы с произвольным числом телефонов, поиска телефона по какому-либо признаку (например, по фирме производителю, цене или серийному номеру), добавления телефона в базу, удаления телефона из нее, сортировки информации о телефонах по разным полям.
Вариант 5. Описать класс «Легковой автомобиль».
Класс должен включать в себя следующие поля (свойства):
· Номер двигателя
· Фирма-производитель
· Модель
· Цвет
· Вид кузова (Седан, Универсал, Хэтчбек, Купе, Лимузин, Минивэн, Комби)
· Объем двигателя
· Год выпуска
· Цена
· …
Определить конструктор без параметров, конструкторы с параметрами.
Продумать, какие свойства должны быть доступны только для просмотра, а какие – и для изменения значения. Переопределить стандартный метод ToString () для перевода информации об автомобиле в строковый формат. Определить методы для сравнения двух автомобилей по указанному свойству.
Используя класс «Легковой автомобиль», описать класс «Автосалон», содержащий информацию об имеющихся в продаже легковых автомобилях в автосалоне. Предусмотреть возможность работы с произвольным числом автомобилей, поиска автомобиля по какому-либо признаку (например, по фирме производителю, модели, цвету или объему двигателя), добавления автомобиля в базу, удаления автомобиля из нее, сортировки информации об автомобилях по разным полям.
Баллы: задача оценивается в 3 балла.