Встречается на собеседованиях • сегодня

Как используется интерфейс в ООП

В Python интерфейсы реализуются неявно через абстрактные классы (ABC) из модуля abc. Интерфейс определяет контракт — набор методов, которые должны быть реализованы в классах-наследниках.

python
from abc import ABC, abstractmethod

class Shape(ABC):
    @abstractmethod
    def area(self):
        pass

class Circle(Shape):
def init(self, radius):
self.radius = radius

text
def area(self):
    return 3.14 * self.radius ** 2
text

**Ключевые моменты:**  
1. Интерфейс гарантирует единообразие API для разных классов.  
2. Python не требует явного объявления интерфейсов (как в Java), но `ABC` помогает формализовать их.  
3. Попытка создать экземпляр класса без реализации абстрактных методов вызовет `TypeError`.  

Используется для полиморфизма, тестирования (моки) и соблюдения принципа SOLID (D — Dependency Inversion).
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы