Встречается на собеседованиях • сегодня

Как реализуется абстрактный класс в Python

В Python абстрактные классы реализуются с помощью модуля abc (Abstract Base Classes). Для создания абстрактного класса нужно:

  1. Наследоваться от ABC (Abstract Base Class)
  2. Использовать декоратор @abstractmethod для обозначения абстрактных методов

Пример:

python
from abc import ABC, abstractmethod

class Animal(ABC):
    @abstractmethod
    def make_sound(self):
        pass

class Dog(Animal):
    def make_sound(self):
        return "Woof!"

# Попытка создать экземпляр без реализации абстрактного метода вызовет TypeError
# animal = Animal()  # Ошибка!
dog = Dog()  # Ок

Ключевые особенности:

  • Нельзя создать экземпляр абстрактного класса
  • Все наследники должны реализовать абстрактные методы
  • Может содержать как абстрактные, так и обычные методы
  • Позволяет задавать строгую структуру для дочерних классов
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы