1.Object est la classe parent de tous les objets. 2. Lorsque la classe conteneur ne sait pas dans quel type elle va insérer, la conception de l'implémentation ne peut utiliser qu'un tableau Object pour stocker les éléments. 3. Les génériques sont effacés après compilation. En d’autres termes, pour la JVM, ce qu’elle voit, c’est un objet. Ainsi, seul le tableau Object peut être renvoyé. Quant à l'ajout de génériques, le compilateur vous aidera avec les transtypages et la détection des éléments.
Parce que le type spécifique d'éléments de la collection n'est pas connu. Et Object est la classe parent de toutes les classes. C'est plus raisonnable.
1.Object est la classe parent de tous les objets.
2. Lorsque la classe conteneur ne sait pas dans quel type elle va insérer, la conception de l'implémentation ne peut utiliser qu'un tableau Object pour stocker les éléments.
3. Les génériques sont effacés après compilation. En d’autres termes, pour la JVM, ce qu’elle voit, c’est un objet.
Ainsi, seul le tableau Object peut être renvoyé. Quant à l'ajout de génériques, le compilateur vous aidera avec les transtypages et la détection des éléments.
Ouais, bizarre.
Il est donc recommandé d'utiliser Collection.toArray(T[] a) pour renvoyer des génériques afin d'éviter le problème de conversion forcée d'Object[].
Parce que le type spécifique d'éléments de la collection n'est pas connu. Et Object est la classe parent de toutes les classes. C'est plus raisonnable.