Урок 11

Интерфейсы и абстракции

15 мин

Интерфейсы и абстрактные классы — это способы определить "контракт", которому должны следовать классы. Они гарантируют, что класс будет иметь определённые методы.

Зачем нужны интерфейсы?

Представьте: вам нужно отправлять уведомления пользователям. Способы разные:

  • Email
  • SMS
  • Push-уведомления
  • Telegram

Интерфейс говорит: "Любой класс уведомлений ДОЛЖЕН иметь метод send()". Не важно как он реализован внутри — главное, что он есть.

Интерфейсы (interface)

Интерфейс — это контракт без реализации. Он объявляет методы, но не содержит их код:

Абстрактные классы

Абстрактный класс — это частично реализованный класс:

Множественная реализация

Когда что использовать:
- Интерфейс — когда нужен контракт без реализации
- Абстрактный класс — когда есть общая реализация для наследников

Мы используем файлы cookie для улучшения работы сайта и персонализации контента. Продолжая использовать сайт, вы соглашаетесь с использованием cookies в соответствии с нашей Политикой конфиденциальности.