Junior — Middle
78
В каких ситуациях рекомендуется применять абстрактный класс в объектно-ориентированном проектировании?
Компании, где спрашивали
А Деньги
Ответ от нейросети
sobes.tech AI
Абстрактный класс рекомендуется использовать, когда нужно задать общий шаблон для группы связанных классов, но при этом нельзя создать экземпляр самого абстрактного класса. Он позволяет определить общие методы и поля, а также объявить абстрактные методы, которые должны быть реализованы в подклассах.
Ситуации применения:
- Когда несколько классов имеют общую функциональность, которую можно реализовать в базовом абстрактном классе.
- Когда нужно обеспечить частичную реализацию, оставляя детали реализации подклассам.
- Когда требуется задать контракт (через абстрактные методы), но при этом предоставить некоторую общую логику.
Пример:
abstract class Animal {
void breathe() {
System.out.println("Дышит");
}
abstract void makeSound();
}
class Dog extends Animal {
@Override
void makeSound() {
System.out.println("Гав-гав");
}
}
Здесь Animal — абстрактный класс с общей реализацией дыхания и абстрактным методом звука.