Sobes.tech
Back to questions
Junior — Middle
60

Каким образом в Python создается абстрактный класс и как его можно определить?

Answer from AI

sobes.tech AI

В Python абстрактный класс создаётся с помощью модуля abc (Abstract Base Classes). Для этого класс наследуется от ABC и содержит методы, помеченные декоратором @abstractmethod. Такие методы должны быть реализованы в подклассах.

Пример:

from abc import ABC, abstractmethod

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

class Dog(Animal):
    def make_sound(self):
        print("Гав-гав")

# Попытка создать экземпляр Animal вызовет ошибку
# animal = Animal()  # TypeError

dog = Dog()
dog.make_sound()  # Выведет: Гав-гав

Таким образом, абстрактный класс задаёт интерфейс, который обязаны реализовать все наследники.