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