Обратное преобразование типа

При помощи оператора instanceof можно определять, каким набором свойств и методов обладает тот или иной объект, и выполнять в зависимости от этого различные действия. Например:

Данный код, конечно, не является лучшим примером, потому что он не позволяет в будущем легко добавлять новые типы страниц в программу. Собственно, полиморфизм как раз и был изобретен для того, чтобы избежать подобных конструкций в программе, заменив их вызовами виртуальных методов. Тем не менее, в некоторых ситуациях подобный подход все же находит применение.

 

Задания для самостоятельного решения

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

В следующих заданиях требуется создать базовый класс (как вариант абстрактный базовый класс) и определить общие методы show(), get(), set() и другие, специфические для данного класса. Создать производные классы, в которые добавить свойства и методы.

Часть методов переопределить. Создать массив объектов базового класса и заполнить объектами производных классов. Объекты производных классов идентифицировать конструктором по имени или идентификационному номеру.

Вызвать метод show() базового класса и просмотреть массив объектов.

Использовать объекты для моделирования реальных ситуаций.

Обязательно присутствие UML - диаграммы классов (или ее аналога).

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: