ВУЗ: Университет управления «ТИСБИ»
Категория: Методичка
Дисциплина: Объектно-ориентированное программирование
Добавлен: 20.10.2018
Просмотров: 345
Скачиваний: 8
Практическое задание 4. Разработка классов для графических
объектов на основе композиционного взаимодействия
Постановка задачи.
Требуется разработать небольшую библиотеку классов для графических
объектов, взаимодействующих на основе композиции. Исходные данные –
созданные при выполнении задания 1 классы для объектов Окружность и
Прямоугольник. Библиотека должна включать следующий минимальный
набор классов (см. раздел 5 пособия):
класс точек
класс окружностей, использующий класс точек
класс прямоугольников, также использующий класс точек
класс простой детали, состоящей из окружности внутри
прямоугольника
Порядок выполнения работы:
1. Изучить материал раздела 5 пособия
2. Открыть ранее созданный проект (модули с классами Окружность и
Прямоугольник и модуль-форма для тестирования методов этих классов) и
сохранить его в новом каталоге для внесения необходимых изменений
3. Добавить в проект новый модуль для класса точек, и в этом классе ввести:
два закрытых свойства для хранения координат точки;
конструктор для инициализации свойств-координат и вывода
сообщения о создании объекта (это будет использоваться в
дальнейшем для проверки правильности вложенных вызовов
конструкторов взаимодействующих классов);
методы доступа к координатам точки.
4. Внести следующие изменения в ранее созданный класс Окружность:
заменить свойства-координаты центра одним объектным свойством
для хранения указателя на объект-точку;
реализовать два конструктора, которые кроме стандартных
операций выполняют дополнительно вывод сообщения о создании
объекта-окружности;
в методе прорисовки окружности вместо прямого использования
координат центра применить вызовы соответствующих методов
доступа из класса точек;
в методе перемещения окружности заменить прямую установку
новых значений координат вызовом соответствующего метода
доступа класса точек.
5. Проверить работу приложения, обратив внимание на порядок создания
объектов.
6. Внести следующие изменения в ранее созданный класс Прямоугольник:
заменить свойства-координаты левого верхнего угла одним
объектным свойством для хранения указателя на объект-точку;
реализовать два конструктора, которые кроме стандартных
операций выполняют дополнительно вывод сообщения о создании
объекта-прямоугольника;
реализовать методы прорисовки и перемещения прямоугольника
аналогично методам класса окружностей (с использованием методов
доступа к координатам точки);
7. Проверить работу приложения, обратив внимание на порядок создания
объектов.
8. Добавить в проект новый модуль для класса Деталь; класс должен содержать
два объектных свойства-указателя на окружность и прямоугольник, два
конструктора с выводом сообщения, а также методы прорисовки и
перемещения.
9. Проверить правильность работы методов класса Деталь.