Что такое интерфейс? Можно ли реализовать несколько интерфейсов одним классом? Можно ли поместить логику в интерфейс?

В объектно-ориентированном программировании (ООП) интерфейс — это абстрактный тип, который определяет набор методов, которые класс должен реализовать, но не содержит их конкретной реализации.

Короткий ответ

Что ответить на собеседовании

В объектно-ориентированном программировании (ООП) интерфейс — это абстрактный тип, который определяет набор методов, которые класс должен реализовать, но не содержит их конкретной реализации. Интерфейс задаёт контракт, который гарантирует, что объекты, реализующие этот интерфейс, будут иметь определённый набор функций.

Подробный разбор

Ответ с пояснениями

В объектно-ориентированном программировании (ООП) интерфейс — это абстрактный тип, который определяет набор методов, которые класс должен реализовать, но не содержит их конкретной реализации. Интерфейс задаёт контракт, который гарантирует, что объекты, реализующие этот интерфейс, будут иметь определённый набор функций.

Это позволяет:

  • Обеспечить полиморфизм — разные классы могут использоваться одинаково, если реализуют один интерфейс.
  • Разделять логику и реализацию, повышая гибкость и расширяемость кода.
  • Улучшать читаемость и поддержку кода.

Пример: если есть интерфейс IShape с методом draw(), то разные фигуры (круг, квадрат) могут реализовать этот метод по-своему.

В языках, где нет явной поддержки интерфейсов (например, в Python), интерфейс можно представить через абстрактные базовые классы или просто соглашения о методах.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее