Чем наследование отличается от композиция и когда что выбрать?

JavaJuniorOOP и проектирование на JavaСравнениеjava|oop и проектирование на java|наследование

Что хотят услышать интервьюеры:

Сравнение: наследование стоит сравнивать с композиция по критериям читаемости, безопасности, производительности, тестируемости и поддержки командой.

Ответ:

Когда выбирать наследование: когда его свойства прямо соответствуют задаче: наследование описывает отношение is-a и переиспользует контракт/поведение базового класса.

Слабый ответ: “так принято в Spring/Java”. На собеседовании лучше объяснить ограничения и цену выбора.

class AdminUser extends User {}

Источники

Похожие вопросы