Встречается на собеседованиях • сегодня
Зачем нужен интерфейс
Интерфейс в Python (обычно реализуемый через абстрактные классы ABC) определяет контракт, который должны соблюдать классы-наследники. Это позволяет:
- Стандартизировать код – все классы, реализующие интерфейс, обязаны определить указанные методы.
- Упростить тестирование – можно использовать mock-объекты, соответствующие интерфейсу.
- Обеспечить полиморфизм – разные классы могут быть использованы взаимозаменяемо, если реализуют один интерфейс.
Пример:
python
from abc import ABC, abstractmethod
class Shape(ABC):
@abstractmethod
def area(self):
pass
class Circle(Shape):
def __init__(self, radius):
self.radius = radius
def area(self):
return 3.14 * self.radius ** 2
# Нельзя создать экземпляр Shape(), только его реализаций (Circle и т.д.)
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы