Для того, чтобы система оставалась
независимой от различных типов объектов,
паттерн «Фабричный метод» использует
механизм полиморфизма - классы всех
конечных типов наследуются от одного
абстрактного базового класса,
предназначенного для полиморфного
использования. В этом базовом классе
определяется единый интерфейс, через
который пользователь будет оперировать
объектами конечных типов.