bloc2:prog:poo:classesabstraites
Ceci est une ancienne révision du document !
Table des matières
Classes abtraites
Concept
Une classe abstraite est une classe qui ne peut pas être instanciée directement, mais qui sert plutôt de modèle ou de base pour d'autres classes. Elle est conçue pour être héritée et étendue par d'autres classes qui peuvent en revanche être instanciées.
Dans une classe abstraite, on pourra trouver :
- Des méthodes et attributs classiques, comme on en a déjà l’habitude en POO ;
- Des méthodes dites « abstraites » qui fournissent uniquement leur signature. Charge aux classes qui en héritent de définir le code de ces méthodes.
Exemple :
// une classe abstraite A public abstract class A { // une méthode non abstraite (=implémentée) dans A public void maMethode() { ... } // une méthode abstraite de A public abstract void autreMethode (int nombre) ; }
Bénéfices
- On peut placer dans une classe abstraite toutes les fonctionnalités dont on souhaite disposer dans ses classes dérivées, sans pour autant définir leur fonctionnement interne;
- On peut utiliser des classes abstraites pour simplement empêcher qu’une classe ne soit instanciée parce que son existence en tant que classe est uniquement technique et ne repose pas sur le besoin de manipuler l’objet en tant que tel.
Comment les utiliser
=== Définir la classe abstraite en utilisant le mot-clé “abstract” devant la déclaration de classe. ===
bloc2/prog/poo/classesabstraites.1680464460.txt.gz · Dernière modification : 2023/04/02 21:41 de yvinec.t
