Sobes.tech
Back to questions
Junior — Middle
80

Какие компоненты или функции можно получить или унаследовать при создании подкласса от базового класса в Python?

Companies where asked
IT OneIT One

Answer from AI

sobes.tech AI

При создании подкласса от базового класса в Python подкласс наследует все атрибуты и методы базового класса, включая:

  • Методы — функции, определённые в базовом классе, становятся доступными в подклассе.
  • Атрибуты экземпляра — переменные, определённые в конструкторе (__init__) базового класса.
  • Атрибуты класса — переменные, определённые на уровне класса.

Подкласс может переопределять методы базового класса, добавлять новые методы и атрибуты, а также вызывать методы базового класса через super().

Пример:

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

    def speak(self):
        return "..."

class Dog(Animal):
    def speak(self):
        return "Гав!"

my_dog = Dog("Бобик")
print(my_dog.name)   # Унаследованный атрибут
print(my_dog.speak()) # Переопределённый метод

Таким образом, подкласс получает все функциональные возможности базового класса, что позволяет расширять и модифицировать поведение без дублирования кода.