Junior — Middle
Quais são as principais funções e aplicações das classes abstratas na programação orientada a objetos?
sobes.tech IA
Resposta da IA
As classes abstratas na programação orientada a objetos são classes que não são destinadas a criar instâncias diretamente, mas servem como modelos base para outras classes.
Funções principais das classes abstratas:
- Definir uma interface comum e comportamento base para um grupo de classes relacionadas.
- Possibilidade de declarar métodos abstratos (sem implementação), que devem ser implementados pelas subclasses.
- Permitem implementar parcialmente a funcionalidade que as subclasses herdam.
Aplicabilidade:
- Quando é necessário estabelecer um contrato comum para diferentes implementações.
- Quando parte da lógica é comum, e outra parte deve ser implementada pelos herdeiros.
Exemplo em Java:
abstract class Animal {
abstract void makeSound(); // método abstrato
void breathe() {
System.out.println("Respira");
}
}
class Dog extends Animal {
void makeSound() {
System.out.println("Au-au");
}
}
Aqui, Animal não pode ser criado diretamente, mas pode criar um Dog, que implementa o método makeSound.