[Java] Appeler un constructeur dans le corps d'une méthode
Résolu
divad92
Messages postés
25
Date d'inscription
Statut
Membre
Dernière intervention
-
divad92 Messages postés 25 Date d'inscription Statut Membre Dernière intervention -
divad92 Messages postés 25 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Pourrait-on me donner un exemple illustrant ce paragraphe
Ajouter un comportement à une méthode de la superclasse
La redéfinition d'une méthode consiste à réécrire totalement la méthode initiale. Il est parfois utile de simplement ajouter un comportement au comportement original, pour cela l'utilisation du mot-clé super s'avère nécessaire. En appelant le constructeur de la superclasse dans le corps de la méthode qui la redéfinit, et en ajoutant de nouvelles instructions, la méthode originale est dotée de comportements supplémentaires.
J'ai trouvé ça ici :
https://www.commentcamarche.net/contents/556-java-l-heritage
Merci ;)
Pourrait-on me donner un exemple illustrant ce paragraphe
Ajouter un comportement à une méthode de la superclasse
La redéfinition d'une méthode consiste à réécrire totalement la méthode initiale. Il est parfois utile de simplement ajouter un comportement au comportement original, pour cela l'utilisation du mot-clé super s'avère nécessaire. En appelant le constructeur de la superclasse dans le corps de la méthode qui la redéfinit, et en ajoutant de nouvelles instructions, la méthode originale est dotée de comportements supplémentaires.
J'ai trouvé ça ici :
https://www.commentcamarche.net/contents/556-java-l-heritage
Merci ;)
A voir également:
- Appeler un constructeur dans un constructeur java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Appeler en privé - Guide
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
1 réponse
Exemple bidon avec l'utilisation de super dans un constructeur et dans une méthode :
public class PointXY { protected double x,y; public PointXY(double x, double y) { this.x=x; this.y=y; } public void afficher() { System.out.println("x = "+x); System.out.println("y = "+y); } } public class PointXYZ extends PointXY { protected double z; public PointXYZ(double x, double y,double z) { super(x,y); this.z=z; } public void afficher() { super.afficher(); System.out.println("z = "+z); } } public class Test { public static void main(String[] args) { PointXY xy = new PointXY(1,2); xy.afficher(); PointXYZ xyz = new PointXYZ(3,4,5); xyz.afficher(); } }
OK :)
Evidemment ici c'est un exemple très simple, presque inutile, mais qui permet de voir ce que permet de faire l'héritage. Ici on ne s'est intéressé qu'à "compléter" une méthode, mais dans la majorité des cas, un certain nombre de méthodes sont totalement inchangées d"une classe mère vers sa classe fille, dans ce cas là il n'y a même pas besoin d'y retoucher, et les méthodes se propagent (c'est le cas par exemple de toutes les méthodes de Object)