Junior — Middle
87
W jakich przypadkach można zdefiniować klasę abstrakcyjną w Pythonie i jak to zrobić?
Odpowiedź od AI
sobes.tech AI
В Python абстрактный класс используется, когда нужно определить базовый класс с некоторыми методами, которые должны быть реализованы в подклассах, но сам базовый класс не предназначен для создания экземпляров.
Для создания абстрактного класса используется модуль abc и декоратор @abstractmethod.
Пример:
from abc import ABC, abstractmethod
class Animal(ABC):
@abstractmethod
def make_sound(self):
pass
class Dog(Animal):
def make_sound(self):
return "Гав"
# Animal() вызовет ошибку, а Dog() можно создать и использовать
Абстрактный класс нельзя инстанцировать, он служит для определения интерфейса и обязательных методов для наследников.