Заранее спасибо,
Моя ситуация такова, что у меня есть абстрактный класс Vehicle , который содержит:
private List<Tire> m_Tires;
Дело в том, что количество шин в списке определяется в производных классах и различается между собой, но код, необходимый для создания экземпляра, одинаков, и поэтому я бы предпочел избежать дублирования кода и разместить код (который создает экземпляр m_Tires ) в абстрактном Vehicle конструкторе класса.
Сначала я подумал об использовании protected abstract void initializeTires();
, который будет реализован в производных классах и будет вызван из конструктора Vehicle. Я видел здесь, что это плохое программирование и подвержено ошибкам.
Итак, вкратце: Можно ли здесь избежать дублирования кода, или мне просто придется с этим смириться?