Back to questions
Junior — Middle
77
Объясните, что представляет собой абстрактный класс в объектно-ориентированном программировании.
Answer from AI
sobes.tech AI
Абстрактный класс в объектно-ориентированном программировании — это класс, который не предназначен для создания экземпляров напрямую. Он служит как базовый шаблон для других классов и может содержать:
- Абстрактные методы — объявленные, но не реализованные в самом абстрактном классе, реализация которых обязательна в подклассах.
- Обычные методы с реализацией, которые могут использоваться или переопределяться в наследниках.
Абстрактный класс помогает определить общий интерфейс и поведение для группы связанных классов, обеспечивая при этом возможность конкретизации в подклассах.
Пример на Java:
abstract class Animal {
abstract void makeSound(); // абстрактный метод
void sleep() {
System.out.println("Sleeping...");
}
}
class Dog extends Animal {
void makeSound() {
System.out.println("Bark");
}
}
Здесь Animal нельзя создать напрямую, но можно создать Dog, который реализует абстрактный метод.