Это может быть похоже на команду (замечено Ирфием).
Если у вас есть сложная логика, которая определяет, какой подкласс базового класса использовать (т. Е. Больше, чем разумно делать с несколькими параметрами конструктора), тогда вы можете использовать шаблон factory .
Я также выброшу стратегию , но мы можем сбиться с пути.
Как общее примечание по шаблонам проектирования, вы должны использовать их с определенной целью. Обычно шаблоны используются для:
- Увеличение читабельности кода
- Увеличение возможности повторного использования кода.
- Отделите то, что может измениться от того, что не изменится.
В частности, если подклассы, которые вы выбираете, могут измениться в будущем, хорошо бы абстрагировать код, который решил, какой из них использовать. Фабричный шаблон делает это, заключая эту логику в один класс.
Мне кажется странным, что вы используете несколько классов для представления того, что выглядит как методы. Но, похоже, вы работаете с другим API, поэтому мне нужно больше информации, чтобы посоветовать дальше.