Sobes.tech
Junior — Middle

Quais componentes ou funções podem ser obtidos ou herdados ao criar uma subclasse de uma classe base em Python?

sobes.tech IA

Resposta da IA

При создании подкласса от базового класса в 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()) # Переопределённый метод

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