Appelle méthode
Résolu/Fermé
Aminax
Messages postés
81
Date d'inscription
jeudi 26 septembre 2013
Statut
Membre
Dernière intervention
29 mai 2015
-
7 janv. 2014 à 09:47
Aminax Messages postés 81 Date d'inscription jeudi 26 septembre 2013 Statut Membre Dernière intervention 29 mai 2015 - 7 janv. 2014 à 11:38
Aminax Messages postés 81 Date d'inscription jeudi 26 septembre 2013 Statut Membre Dernière intervention 29 mai 2015 - 7 janv. 2014 à 11:38
3 réponses
Aminax
Messages postés
81
Date d'inscription
jeudi 26 septembre 2013
Statut
Membre
Dernière intervention
29 mai 2015
7 janv. 2014 à 11:38
7 janv. 2014 à 11:38
oui le fait que add est une méthode static , donc en regarde uniquement le type de la variable Computer et pas le type réel de l'objet SuperComputer ... Merci :)
Atloka
Messages postés
24
Date d'inscription
vendredi 18 novembre 2011
Statut
Membre
Dernière intervention
12 août 2015
2
7 janv. 2014 à 10:27
7 janv. 2014 à 10:27
Salut,
Remplace "Computer pc = new SuperComputer();" par "SuperComputer pc = new SuperComputer();"
La méthode "add" est re-définie dans SuperComputer et donc masque la définition de add de Computer.
Donc a l'appel de la méthode add, celle-ci est d'abord recherchée dans la classe SuperComputer où se trouve une (re)définition.
Have fun ! ;)
Atloka
Remplace "Computer pc = new SuperComputer();" par "SuperComputer pc = new SuperComputer();"
La méthode "add" est re-définie dans SuperComputer et donc masque la définition de add de Computer.
Donc a l'appel de la méthode add, celle-ci est d'abord recherchée dans la classe SuperComputer où se trouve une (re)définition.
Have fun ! ;)
Atloka
irmeche
Messages postés
71
Date d'inscription
jeudi 10 juin 2010
Statut
Membre
Dernière intervention
18 juillet 2014
17
Modifié par irmeche le 7/01/2014 à 10:51
Modifié par irmeche le 7/01/2014 à 10:51
il faut enlever le static pour la méthode add pour corriger ton problème
Pour information une méthode static tu peux l'appeler comme suis:
Pour information une méthode static tu peux l'appeler comme suis:
int sum = Computer.add (9, 5); // appelle Computer int sum = SuperComputer.add (9, 5); // appelle SuperComputer