Абстрактный суперкласс — это класс, который вызывает метод, но не наследует и не определяет его. Он ожидает заполнения метода подклассом. Абстрактные суперклассы часто используются в качестве способа обобщения классов, когда поведение не может быть спрогнозировано до написания кода более специфического подкласса. Объектно-ориентированные фреймворки также применяют их как способ направления на определяемые клиентом настраиваемые операции.
Абстрактный метод - это только объявление метода, без его подробной реализации:
from abc import ABC, abstractmethod
class Animal(ABC):
@abstractmethod
def move(self):
pass
a = Animal()
# TypeError: Can't instantiate abstract class Animal with abstract methods move
class Animal():
@abstractmethod
def move(self):
pass
a = Animal()
Post #4065
982
- 🤡 3
- 👍 2
- ❤ 1