Назад к вопросам
Junior
89
questionbank
Что такое абстрактный класс и для чего он используется?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Абстрактный класс — это класс, который содержит одно или несколько абстрактных (без реализации) методов или же объявлен с ключевым словом abstract, но не содержит абстрактных методов. Он не может быть инстанцирован напрямую.
Использование:
- Определение общего поведения: Абстрактные классы определяют скелет поведения, которое должно быть реализовано его подклассами. Это позволяет избежать дублирования кода.
- Частичная реализация интерфейса: Можно реализовать часть интерфейса в абстрактном классе, оставив специфическую реализацию для подклассов.
- Предотвращение инстанцирования: Гарантирует, что только конкретные подклассы могут быть созданы.
abstract class Shape { // Абстрактный класс
abstract fun draw() // Абстрактный метод
fun fill(color: String) { // Обычный метод
// Реализация заполнения
}
}
class Circle : Shape() {
override fun draw() {
// Реализация отрисовки круга
}
}