Problème de méthode avec résultats.

Résolu
WedZee Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
WedZee Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je vous écris ce message pour vous faire part de mon problème.
Voilà, j'ai un projet à rendre, en JAVA. Le but est de crée 2 constructeurs de typer Poquemont et de type Dresseur. Seulement voilà, je dois crée une methode adopterPoquemont dans la classe Dresseur, et je n'y arrive pas vraiment.
Voici ma methode actuellement:

public Poquemont adopterPoquemont (Poquemont pPoquemont) {
if (this.familier != null) {
if (pPoquemont.seFaireAdopter = true) {
familier = this.familier;
this.familier.seFaireLiberer();
this.familier = pPoquemont;
return familier;
}
else {
return null;
}
}
else {
this.familier = pPoquemont;
return null;
}
}


Voici les methodes que j'utilise qui sont dans la classe Poquemont:

public boolean seFaireAdopter( Dresseur pDresseur ) {
if (this.dresseur == null ) {
this.dresseur = pDresseur;
return true;
}
else {
return false;
}
}


L'erreur que j'obtient en compilant est: Cannot find symbol. pour "pPoquemont.seFaireAdopter = true"
Voilà, je suis prêt à accepter n'importe quelle aide.
Merci à vous!
A voir également:

3 réponses

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
seFaireAdopter
est une méthode, pas un attribut, tu dois donc lui donner des paramètres. De plus, dans un if, il ne faut pas faire d'affectation avec un
=
mais une comparaison avec deux
==
, même si la comparaison à
true
est inutile. Tu devrais donc avoir quelque chose comme :

if (pPoquemont.seFaireAdopter(pDresseur)) 
0
WedZee Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Merci d'avoir répondu rapidement, je comprends ce que tu veux dire, mais pourquoi avoir un pDresseur, alors que je me trouve déjà dans la classe Dresseur. De plus en rajoutant cela j'ai toujours une erreur et donc cette fois au niveau du pDresseur. Je vois très bien qu'il faut mettre un argument dans cette méthode, mais je ne sais justement pas quoi mettre...
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
"pourquoi avoir un pDresseur" ?
Parce que ta méthode seFaireAdopter prend en argument un pDresseur. Mais peut-être que ce n'est pas la méthode seFaireAdopter qu'il faut mettre ici. Il faudrait expliquer ce que tu veux faire.

"en rajoutant cela j'ai toujours une erreur et donc cette fois au niveau du pDresseur."
En effet, parce que pDresseur n'existe pas, en fait si j'ai bien compris, le dresseur ici c'est
this
.

if (pPoquemont.seFaireAdopter(this)) 
0
WedZee Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Merci, beaucoup. En effet, je n'avais pas pensé à utiliser le this ici. Ne sachant pas trop quand l'utiliser. Maintenant mon programme compile à la perfection.

Encore une fois merci beaucoup et bonne soirée.
0