Интерфейсы и абстракции
15 минИнтерфейсы и абстрактные классы — это способы определить "контракт", которому должны следовать классы. Они гарантируют, что класс будет иметь определённые методы.
Зачем нужны интерфейсы?
Представьте: вам нужно отправлять уведомления пользователям. Способы разные:
- SMS
- Push-уведомления
- Telegram
Интерфейс говорит: "Любой класс уведомлений ДОЛЖЕН иметь метод send()". Не важно как он реализован внутри — главное, что он есть.
Интерфейсы (interface)
Интерфейс — это контракт без реализации. Он объявляет методы, но не содержит их код:
Абстрактные классы
Абстрактный класс — это частично реализованный класс:
Множественная реализация
- Интерфейс — когда нужен контракт без реализации
- Абстрактный класс — когда есть общая реализация для наследников
Материалы по теме
- Глоссарий digital-терминов Глоссарий
- Статьи блога по разработке и SEO Блог
- Практические чеклисты по внедрению Чеклисты