Vous êtes sur la page 1sur 7

Classes et méthodes

abstraites
Méthode abstraite
Une méthode est abstraite (modificateur abstract)
lorsqu’on la déclare, sans donner son implémentation (pas
d’accolades mais un simple « ; » à la suite de la signature
de la méthode) :

Syntaxe :

public abstract type Nom_Méthode(type attr1, type attr2,...);


Pourquoi abstraite ?
Une classe est abstraite parce qu'on n'est pas capable d'écrire
l'implémentation de toutes les méthodes.
Pourquoi abstraite ?
Le mécanisme des classes abstraites permet de définir des comportements (méthodes) dont l'implémentation (le
code dans la méthode) se fait dans les sous-classes. Ainsi, on a l'assurance que ces sous-classes respecteront le
contrat défini par la super-classe abstraite. Ce contrat est une interface de programmation.

Super classe

public abstract int Méthode1(int x, int y);


public abstract double Méthode2(int z);
public abstract void Méthode3(double w);

Sous classe 1 Sous classe 2


public abstract int Méthode1(int x, int y) {…} public abstract int Méthode1(int x, int y) {…}
public abstract double Méthode2(int z){…} public abstract double Méthode2(int z){…}
public abstract void Méthode3(double w) {…} public abstract void Méthode3(double w) {…}
Classe abstraite
Syntaxe :

 Dés qu’une classe comporte une méthode abstraite  elle est abstraite.

 Il est interdit de créer une instance d’une classe abstraite


Classes et méthodes abstraites : Exemple

 La classe Forme_Geometrique est


abstraite car ses méthodes
surface() et perimetre() sont
abstraites,

 Une telle classe n'est pas


instanciable
Classe abstraite : Quelques règles
1. Il est interdit de créer une instance d’une classe abstraite.

2. Dés qu’une classe comporte une méthode abstraite  elle est abstraite.

3. une classe abstraite peut contenir des méthodes non abstraites et des
déclarations de variables ordinaires.

4. Une classe dérivée d'une classe abstraite n'est pas obligée de redéfinir
toutes les méthodes abstraites. Elle peut même n'en définir aucune. Si
c'est le cas, elle reste abstraite.

Vous aimerez peut-être aussi