Concept : Les génériques, c'est-à-dire les « types paramétrés ». Il s'agit de paramétrer le type spécifique d'origine, similaire aux paramètres variables de la méthode. À ce stade, le type est également défini comme un formulaire de paramètre (qui peut être appelé paramètre de type), puis le type spécifique (type paramètre réel). ) est transmis lors de l'utilisation/de l'appel de ).
Essence : Afin de paramétrer les types (contrôler les types spécifiques de restrictions de paramètres à travers différents types spécifiés par les génériques sans créer de nouveaux types). C'est-à-dire que lors de l'utilisation de génériques, le type de données de l'opération est spécifié en tant que paramètre. Ce type de paramètre peut être utilisé dans les classes, les interfaces et les méthodes, et est appelé respectivement classes génériques, interfaces génériques et méthodes génériques. .
Trois façons d'utiliser : Classe générique, interface générique, méthode générique
Tapez le caractère générique :
1 ) Tapez les caractères génériques sont généralement utilisés ? au lieu de paramètres de type concret. Par exemple, List> est logiquement la classe parent de List
2) Le caractère générique de type est défini sous la forme de Liste. Cette définition signifie que la valeur générique du caractère générique accepte Number et ses types de sous-classes sous-jacentes.
Les génériques fournissent un mécanisme de surveillance de la sécurité des types au moment de la compilation, qui permet aux programmeurs de détecter les types illégaux au moment de la compilation. L'essence des génériques est un type paramétré, ce qui signifie que le type de données sur lequel l'opération est effectuée est spécifié en tant que paramètre. Par exemple, si nous voulons écrire une méthode de tri capable de trier un tableau d'entiers, un tableau de chaînes ou même tout autre type de tableau, nous pouvons utiliser des génériques Java.
1. Méthode générique
Vous pouvez écrire une méthode générique qui peut recevoir différents types de paramètres lorsqu'elle est appelée. En fonction des types de paramètres transmis à la méthode générique, le compilateur gère chaque appel de méthode de manière appropriée.
// 泛型方法 printArray public static < E > void printArray( E[] inputArray ) { for ( E element : inputArray ){ System.out.printf( "%s ", element ); } }
1) extend T> indique que le type représenté par le caractère générique est une sous-classe du type T.
2) super T> signifie que le type représenté par le caractère générique est la classe parent de type T.
2. Classe générique
La déclaration d'une classe générique est similaire à la déclaration d'une classe non générique, sauf qu'une déclaration de paramètre de type est ajouté après la partie nom de la classe. Comme les méthodes génériques, la partie déclaration des paramètres de type d’une classe générique contient également un ou plusieurs paramètres de type, séparés par des virgules. Un paramètre générique, également appelé variable de type, est un identifiant qui spécifie le nom d'un type générique. Parce qu'elles acceptent un ou plusieurs paramètres, ces classes sont appelées classes paramétrées ou types paramétrés.
public class Box<T> { private T t; public void add(T t) { this.t = t; } public T get() { return t; }
3. Effacement de type
Les génériques en Java sont essentiellement implémentés au niveau du compilateur. Les informations de type dans les génériques ne sont pas incluses dans le bytecode Java généré. Les paramètres de type ajoutés lors de l'utilisation de génériques seront supprimés par le compilateur lors de la compilation. Ce processus est appelé effacement de type. Les types tels que List
Cet article provient de la colonne Introduction à Java, bienvenue pour apprendre !
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!