Junior — Middle
138
În ce situații se recomandă utilizarea unei clase abstracte în proiectarea orientată pe obiecte?
Companiile au fost întrebate
А Деньги
Răspuns de la AI
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 — абстрактный класс с общей реализацией дыхания и абстрактным методом звука.