Négatif en java ?
Discutez d'informatique ici !
-
Rockleader
- Habitué(e)
- Messages: 2126
- Enregistré le: 11 Oct 2011, 18:42
-
par Rockleader » 02 Jan 2015, 16:35
Hey, j'ai un code qui compile mais qui ne fait pas ce que je voudrais qu'il fasse
Ma classe dont j'hérite possède exactement les mêmes attributs avec un constructeur du type
- Code: Tout sélectionner
public Potion(String nom, int force, int charisme) {
super(nom);
ajouterCaract("force", force);
ajouterCaract("charisme", charisme);
}
Là dessus pas de problème
La classe que je réalise je veux qu'elle fasse la même chose mais en mettant mes deux entiers en négatifs
- Code: Tout sélectionner
public PotionM(String nom, int force, int charisme) {
super(nom, -force, -charisme);
}
Hors lorsque je regarde le résultat de mes PotionM je suis toujours avec des valeurs positives..et je ne comprends pas pourquoi.
Cette histoire est entièrement vraie puisque je l'ai inventé du début à la fin !
-
ampholyte
- Membre Transcendant
- Messages: 3940
- Enregistré le: 21 Juil 2012, 07:03
-
par ampholyte » 02 Jan 2015, 17:31
Bonjour,
Pourrais-tu montrer le prototype de la fonction super si possible ?
-
Rockleader
- Habitué(e)
- Messages: 2126
- Enregistré le: 11 Oct 2011, 18:42
-
par Rockleader » 02 Jan 2015, 18:03
ampholyte a écrit:Bonjour,
Pourrais-tu montrer le prototype de la fonction super si possible ?
The syntax for calling a superclass constructor is
super();
or:
super(parameter list);
With super(), the superclass no-argument constructor is called. With super(parameter list), the superclass constructor with a matching parameter list is called.
Si tu faisais référence aux premier super
Il appelle ce constructeur
- Code: Tout sélectionner
public Element(String nom) {
this.nom = nom;
caract.put("vie", 1);
}
Cette histoire est entièrement vraie puisque je l'ai inventé du début à la fin !
-
fatal_error
- Membre Légendaire
- Messages: 6610
- Enregistré le: 22 Nov 2007, 12:00
-
par fatal_error » 02 Jan 2015, 19:45
ben regarde ce que fait ajouterCaract, regardes si t'as bien une valeur négative passée à ajouterCaract, affiche la carac après l'appel à ajouterCaract.
la vie est une fête

-
Rockleader
- Habitué(e)
- Messages: 2126
- Enregistré le: 11 Oct 2011, 18:42
-
par Rockleader » 03 Jan 2015, 12:52
Entre temps j'ai contourné le problème...mais j'ai toujours pas compris d'où venait le soucis =)
J'imagine que ce genre de soucis arrivent souvent quand on reprend le code d'autres personnes...
Cette histoire est entièrement vraie puisque je l'ai inventé du début à la fin !
-
fatal_error
- Membre Légendaire
- Messages: 6610
- Enregistré le: 22 Nov 2007, 12:00
-
par fatal_error » 03 Jan 2015, 13:47
ce n'est pas une bonne méthode si tu veux apprendre.
et pour gagner du temps c'est pas sur que ca soit une bonne méthode non plus.
Au final, tu ne sais pas si c'est toi qui fait les choses mal, ou si c'est la fonction (que quelqu'un d'autre a vraisemblablement écrite) et tu vas devoir contourner une utilisation qui devrait etre simple par un workaround tout le temps...
ca veut dire que si la fonction est bugguée tu fais du code qui n'a pas lieu d'être (il suffit que l'autre corrige sa fonction). Si elle est pas bugguée, bah pe ton contournement se justifie...
ps: ca dépend de qui tu réutilises le code, si tu le récupères d'une certaine team, d'un certain projet qui a vécu plus ou moins longtemps, alors t'as un code qui fait ce qu'il doit faire.
Si tu le récupères d'un péon qui fait sa ptite librairie dans son coin...c'est déjà plus risqué
la vie est une fête

-
Rockleader
- Habitué(e)
- Messages: 2126
- Enregistré le: 11 Oct 2011, 18:42
-
par Rockleader » 03 Jan 2015, 15:43
Le code que je reprends est bon, je fais confiance aux profs là dessus :ptdr:
Mais étant donné que le but du projet est de rajouter des fonctionnalités, il me semble logique que certains points doivent être adaptés à la nouvelle situation :)
Cette histoire est entièrement vraie puisque je l'ai inventé du début à la fin !
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités