Les caractères génériques (?) résolvent le problème selon lequel List<Dog> n'est pas un List<Animal>. Ils vous permettent d'écrire des méthodes qui fonctionnent avec des types génériques de manière flexible mais toujours sécurisée. Il en existe trois types : illimité (?), limité supérieur (? étend T) et limité inférieur (? super T).
Caractère générique illimité — ?