Junior — Middle
Quelles sont les fonctions principales et les utilisations des classes abstraites en programmation orientée objet?
sobes.tech IA
Réponse de l'IA
Les classes abstraites en programmation orientée objet sont des classes qui ne sont pas destinées à créer des instances directement, mais servent de modèles de base pour d'autres classes.
Fonctions principales des classes abstraites :
- Définir une interface commune et un comportement de base pour un groupe de classes liées.
- La possibilité de déclarer des méthodes abstraites (sans implémentation), qui doivent être implémentées par les sous-classes.
- Permettent d'implémenter partiellement la fonctionnalité que les classes dérivées héritent.
Applicabilité :
- Lorsqu'il est nécessaire de définir un contrat commun pour différentes implémentations.
- Lorsqu'une partie de la logique est commune, et qu'une autre doit être implémentée dans les héritiers.
Exemple en Java :
abstract class Animal {
abstract void makeSound(); // méthode abstraite
void breathe() {
System.out.println("Respire");
}
}
class Dog extends Animal {
void makeSound() {
System.out.println("Wouf-wouf");
}
}
Ici, Animal ne peut pas être créé directement, mais on peut créer un Dog, qui implémente la méthode makeSound.