Maison >Java >javaDidacticiel >Pourquoi Java ne peut-il pas créer de types de tableaux génériques ?

Pourquoi Java ne peut-il pas créer de types de tableaux génériques ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-26 16:48:10884parcourir

Why Can't Java Create Generic Array Types?

Création de types de tableaux génériques en Java

Java diffère de certaines implémentations .NET dans sa gestion des types de tableaux génériques.

Le problème

Considérez ce qui suit code :

private T[] elements = new T[initialCapacity];

Ce code tente de créer un tableau de type générique T. Cependant, Java interdit cette syntaxe.

объяснение

Le La raison derrière cette restriction réside dans l'implémentation du tableau d'exécution de Java. Contrairement aux génériques, les tableaux Java stockent des informations sur leur type de composant au moment de l'exécution. Par conséquent, le type du composant doit être connu lors de la création du tableau.

Étant donné que le paramètre T représente un type générique et que son type réel est déterminé au moment de l'exécution, il est impossible de connaître le type de composant du tableau au moment de la compilation. Cela entraînerait des erreurs d'exécution lors de la tentative d'accès aux éléments du tableau.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn