Junior — Middle
86
Объектке бағытталған жобалауда қай жағдайларда абстрактты класты қолдану ұсынылады?
Сұралған компаниялар
А Деньги
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 — абстрактный класс с общей реализацией дыхания и абстрактным методом звука.