super()

super() - это встроенная функция, которая используется для вызова методов родительского класса из потомка. Она часто применяется в классах, чтобы обращаться к методам, определенным в родительском классе, и расширять их функциональность в дочерних классах.

Преимущества использования super():

  • Позволяет избегать дублирования кода в дочерних классах, вызывая методы родительского класса.

  • Позволяет реализовывать принцип наследования и полиморфизма.

Пример использования super():

class Parent:
    def __init__(self, name):
        self.name = name

    def say_hello(self):
        print(f"Hello, my name is {self.name}")

class Child(Parent):
    def __init__(self, name, age):
        super().__init__(name)  # Вызов конструктора родительского класса
        self.age = age

    def say_hello(self):
        super().say_hello()  # Вызов метода родительского класса
        print(f"I am {self.age} years old")

child = Child("Alice", 5)
child.say_hello()

Last updated