Généricité en java

Résolu
momoiyeb Messages postés 2 Date d'inscription jeudi 22 novembre 2007 Statut Membre Dernière intervention 2 juillet 2011 - 2 juil. 2011 à 01:59
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 - 2 juil. 2011 à 22:06
Salut tout le monde j ai de la misère avec mon code, le ^probleme est que j ai une interface listeTriee
public interface ListeTriee<T extends Comparable<T>> extends Iterable<T> {

boolean estVide();

int getTaille();

void inserer(T elem);

void retirer(T elem);

T getElement(int index);

@Override
ListIterator<T> iterator();
}


et voici la signature de ma classe listeChaineTriee qui implemente la liste


public class ListeChaineTriee<T> implements ListeTriee<T> {
private Noeud<T> tete;
private Noeud<T> fin;
private int taille;
.......

le proble me est que j ai une erreur "type parameter T is not within its bound"
quelqu un peut m expliquer
merci

3 réponses

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
2 juil. 2011 à 09:18
Le problème est que dans ta classe LichaineTriee, T est un type quelquonque alors que dans l'interface T n'est pas quelconque, il implémente Comparable.

Donc, je pense que ca marche si tu réécris ta classe ListeChaineTriee comme ca :
public class ListeChaineTriee<T extends Comparable<T>> implements ListeTriee<T> { 
private Noeud<T> tete; 
private Noeud<T> fin; 
private int taille;
3
momoiyeb Messages postés 2 Date d'inscription jeudi 22 novembre 2007 Statut Membre Dernière intervention 2 juillet 2011
2 juil. 2011 à 17:28
merci bcp julien, ça marche, tu me sauve la vie.
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
2 juil. 2011 à 22:06
De rien.

Bon courage pour la suite
0
Rejoignez-nous