Встречается на собеседованиях • сегодня
Как выглядит интерфейс
В Python интерфейсы реализуются неявно через абстрактные базовые классы (ABC) из модуля abc. Интерфейс определяет контракт — набор методов, которые должны быть реализованы в подклассах.
Пример интерфейса:
python
from abc import ABC, abstractmethod
class Shape(ABC):
@abstractmethod
def area(self):
pass
text
@abstractmethod
def perimeter(self):
passclass Circle(Shape):
def init(self, radius):
self.radius = radius
text
def area(self):
return 3.14 * self.radius ** 2
def perimeter(self):
return 2 * 3.14 * self.radiustext
Ключевые моменты:
1. Наследование от `ABC` делает класс абстрактным
2. `@abstractmethod` помечает методы, которые должны быть реализованы
3. Попытка создать экземпляр класса с нереализованными абстрактными методами вызовет `TypeError`
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы