bloc2:prog:poo:classesabstraites
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| bloc2:prog:poo:classesabstraites [2023/04/04 11:47] – [Bénéfices] admin | bloc2:prog:poo:classesabstraites [2023/04/11 12:00] (Version actuelle) – [Concept] admin | ||
|---|---|---|---|
| Ligne 12: | Ligne 12: | ||
| Exemple : | Exemple : | ||
| - | <code=java A.java> | + | <code java A.java> |
| // une classe abstraite A | // une classe abstraite A | ||
| public abstract class A | public abstract class A | ||
| Ligne 25: | Ligne 25: | ||
| } | } | ||
| </ | </ | ||
| - | <code=java B.java> | + | <code java B.java> |
| // une classe qui dérive la classe abstraite A | // une classe qui dérive la classe abstraite A | ||
| public class B extends A | public class B extends A | ||
| Ligne 50: | Ligne 50: | ||
| * Une classe qui hérite d’une classe abstraite n’est pas tenue de redéfinir toutes les méthodes abstraites (elle peut n’en définir que certaines). Dans ce cas elle demeure elle-même abstraite. | * Une classe qui hérite d’une classe abstraite n’est pas tenue de redéfinir toutes les méthodes abstraites (elle peut n’en définir que certaines). Dans ce cas elle demeure elle-même abstraite. | ||
| - | ===== Comment les utiliser | + | ===== Exemples d' |
| - | === Définir | + | === Définir |
| < | < | ||
| - | public abstract class MaClasseAbstraite | + | public abstract class Classe_A |
| - | | + | |
| } | } | ||
| </ | </ | ||
| - | + | === Définir des méthodes abstraites === | |
| - | === Définir | + | |
| < | < | ||
| - | public | + | public |
| - | | + | |
| - | + | // | |
| - | public abstract void methodeAbstraite(); | + | // + Un point-virgule en fin de ligne |
| + | public abstract void uneMethode | ||
| + | ... | ||
| } | } | ||
| - | |||
| </ | </ | ||
| - | === Hériter de la classe abstraite | + | === Hériter de la classe abstraite |
| < | < | ||
| - | public class MaClasseConcrete | + | public class Classe_B |
| - | | + | |
| } | } | ||
| - | |||
| </ | </ | ||
| - | === Implémenter les méthodes abstraites | + | === Implémenter les méthodes abstraites === |
| < | < | ||
| - | public class MaClasseConcrete | + | public class UneClasse |
| - | protected int variableAbstraite; | + | |
| - | public void methodeAbstraite() { | + | |
| - | // Implémentation de la méthode abstraite | + | |
| + | // Implémentation de la méthode | ||
| } | } | ||
| } | } | ||
| - | |||
| </ | </ | ||
| - | === Utiliser la classe concrète pour instancier des objets et appeler les méthodes héritées de la classe abstraite. === | ||
| - | < | ||
| - | MaClasseConcrete objet = new MaClasseConcrete(); | ||
| - | objet.methodeAbstraite(); | ||
| - | |||
| - | </ | ||
bloc2/prog/poo/classesabstraites.1680601676.txt.gz · Dernière modification : 2023/04/04 11:47 de admin
