Sur cette page, dans "les méthodes génériques":
http://lroux.developpez.com/article/...ge_5#Lgenerics

Il y a quelque chose que je ne comprends pas...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
static void addResidents(List<? extends Resident> newComers,
                         List<Resident> residents)
{
  for(Resident n: newComers)
  {
    residents.add(n); // erreur de compilation
  }
}
Pourquoi il y a une erreur de compilation à la ligne indiquée?
Pour chaque (? extends résident) de la liste newComers, donc qui est d'un type inconnu, mais dont on sait qu'il hérite de Resident, on veut l'ajouter dans la liste des résidents, paramétrée par le type Resident.
Donc où est le problème... Il attend un Resident, on lui ajoute quelque chose qui étend résident...
C'est comme si on paramétrait par un Object, et qu'on lui mettait une String...
Ca ne devrait pas poser de problèmes...

Pouvez-vous m'éclaircir ?