Probleme en java evec l'appelle des methode

Fermé
siba Messages postés 35 Date d'inscription jeudi 29 novembre 2007 Statut Membre Dernière intervention 19 mars 2008 - 10 déc. 2007 à 08:51
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 - 11 déc. 2007 à 08:28
Bonjour,
bonjour,j'ai une class implementé par une interface qui contient la methode public int comparer(Complex c) et je les testé et elle marche mes quand je veux l'appler dans une autre class encor implementé par une intefface dans la methode trisbulle elle ne sera pas raconnu,l'instruction est:
//la premiere: Class Complexe implements Comparable contient la methode :public int comparer(Complex c)
//la dexieme Class TableauArray implements Tableau{
public void trisBulle(){
------------------------
----------------
if((comparable)t[j-1].comparer(Comparable)t[j])
swap(j-1,j)
}
}
//cannot find symbol
//symbol : method comparer
/*svp,donnez moi tous les possibilité qui peuvent me resoudre ce probléme,
merci/*
A voir également:

6 réponses

Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
10 déc. 2007 à 08:59
ça manque un peu de code pour que je te donne une réponse.
je dirai juste : attention à la casse (ton premier Comparable est sans majuscule) et à l'ordre des appel.
Moi, j'aurai écrit :
if( Comparable(t[j-1]).comparer(Comparable t[j]) )
Enfin, comme je te l'ai dit le problème n'est pas complet, tu n'en dit pas assez.
0
siba Messages postés 35 Date d'inscription jeudi 29 novembre 2007 Statut Membre Dernière intervention 19 mars 2008 1
10 déc. 2007 à 09:07
ca n'a pas marché et le majuscule j'ai mis dans mon programme je ponce que c 1 probléme de transtipage
0
Bonjour,
Il faut peut-être bien transtyper mais avec la bonne classe

Tu devrais peut-être plutôt écrire :
if( (Complex)t[j-1].comparer( (Complex)t[j] )

Mais vérifie aussi que ton tableau est bien un tableau de Complex.
@+
0
siba Messages postés 35 Date d'inscription jeudi 29 novembre 2007 Statut Membre Dernière intervention 19 mars 2008 1
10 déc. 2007 à 11:10
slt,merci pour ton aide ,mais mon tableau c 1 tableau d'objet et il est declaré dans la Class tableauArray et moi je veux utilisè la methode comparer qui est dans la class Complexe qui compare 2 complexe
le probleme ce pose dans l'appelle de cette methode ?l'implementation des interface a 1 efait sur l'appelle des methode?
aider moi svp c un tp et il sra noté
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Tu devrais peut-être découpé ton code de la façon suivante pour trouver d'où vient l'erreur exactement :

Complex complex1 = (Complex)t[j-1];
Complex complex2 = (Complex)t[j];

if (complex1.comparer(complex2))
...

D'ailleurs pourquoi ta fonction comparer ne renvoie-t-elle pas un boolean? Ce ne serai pas plus simple pour la condition du "if".
0
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
11 déc. 2007 à 08:28
Pour moi, c'est obscur, met plus de code.
déjà on sai même pas ce qu'est t, on sait pas quelle clas dérive de quelle autre etc.
0