Встречается на 1% собеседований по Python
Какая возникнет проблема при неправильном использовании наследования
Неправильное использование наследования может привести к нарушению принципа подстановки Барбары Лисков (LSP), когда подкласс не может заменить родительский класс без изменения поведения программы. Это создает хрупкий и трудно поддерживаемый код.
Пример:
python
class Rectangle:
def __init__(self, width, height):
self.width = width
self.height = height
def area(self):
return self.width * self.height
class Square(Rectangle):
def __init__(self, size):
super().__init__(size, size)
def set_width(self, width):
self.width = self.height = width # Нарушает LSP, так как изменяет и высотуЕсли клиентский код ожидает, что изменение ширины Rectangle не повлияет на высоту, использование Square приведет к ошибкам. Вместо наследования здесь лучше использовать композицию.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы