Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Generics (Guida per programmatori C#)

I generics sono stati introdotti a partire dalla versione 2.0 del linguaggio C# e del Common Language Runtime (CLR). Introducono in .NET Framework il concetto di parametri di tipo, grazie ai quali è possibile progettare classi e metodi che rinviano la specifica di uno più tipi fino a quando il codice client non dichiara e crea un'istanza per la classe o il metodo. Utilizzando il parametro del tipo generico T è ad esempio possibile scrivere una singola classe utilizzabile in altro codice client senza incorrere nel rischio di cast o operazioni di boxing in fase di esecuzione, come illustrato di seguito:


// Declare the generic class.
public class GenericList<T>
{
    void Add(T input) { }
}
class TestGenericList
{
    private class ExampleClass { }
    static void Main()
    {
        // Declare a list of type int.
        GenericList<int> list1 = new GenericList<int>();

        // Declare a list of type string.
        GenericList<string> list2 = new GenericList<string>();

        // Declare a list of type ExampleClass.
        GenericList<ExampleClass> list3 = new GenericList<ExampleClass>();
    }
}


  • Utilizzare i tipi generici per favorire la stesura di codice riutilizzabile, l'indipendenza dai tipi e le prestazioni.

  • I generics vengono generalmente utilizzati per creare classi di insiemi.

  • La libreria di classi di .NET Framework contiene varie classi di raccolte generiche nello spazio dei nomi System.Collections.Generic. che dovrebbero essere utilizzate quando possibile al posto di classi come ArrayList nello spazio dei nomi System.Collections.

  • È possibile creare interfacce, classi, metodi, eventi e delegati generici personalizzati.

  • Le classi generiche possono essere vincolate in modo da consentire l'accesso ai metodi su determinati tipi di dati.

  • È possibile ottenere informazioni sui tipi utilizzati in un tipo di dati generico in fase di esecuzione tramite la reflection.

Aggiunte alla community

AGGIUNGI
Mostra: