Наследование в Python для новичков
Наследование позволяет создать новый класс на основе существующего, не переписывая код.
Класс на основе класса
При наследовании класс-потомок перенимает атрибуты и методы класса-родителя и добавляет своё. Так общий код пишут один раз в родителе, а потомки его переиспользуют.
class Дрон:
def летёть(self):
print("лечу")
class ГрузовойДрон(Дрон):
def везти(self):
print("везу груз")
Зачем это нужно
Наследование убирает дублирование: если у обычного и грузового дрона одинаковое движение, его описывают в общем родителе. Потомок получает это бесплатно и добавляет только особенное.
Переопределение метода
Потомок может переопределить метод родителя — описать его заново под себя. Тогда у объекта-потомка вызовется его собственная версия. Это делает поведение гибким без переписывания всей иерархии.
Частые вопросы
Сколько родителей может быть? Обычно один, но Python допускает и несколько.
Что если метод есть и у родителя, и у потомка? Вызовется версия потомка — она переопределяет родительскую.
Начать игру бесплатно