Если единственное, что меняется, это конструктор, я все еще должен получить? - PullRequest
0 голосов
/ 24 декабря 2009

У меня есть класс, в котором все уже реализовано, но процесс его инициализации отличается для каждого дочернего класса.
Есть ли лучшая идиома для замены ctor? Есть ли что-то более общее / динамическое, что я должен использовать?

Ответы [ 2 ]

9 голосов
/ 24 декабря 2009

Или используйте статические фабричные методы. Это позволяет вам иметь разные имена для «конструктора», который показывает намерение.

5 голосов
/ 24 декабря 2009

Действительно ли каждый подкласс представляет собой концепцию, отличную от суперкласса? Если единственное, что изменяется, это инициализация, а не данные или поведение в более поздней версии, не могли бы вы просто добавить параметры в конструктор для управления этой инициализацией?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...