Generika in .NET Framework
Aktualisiert: November 2007
Mit Generika können Sie eine Methode, Klasse, Struktur oder Schnittstelle genau an den Datentyp anpassen, der von ihr verarbeitet wird. Beispielsweise können Sie anstelle der Hashtable-Klasse, die Schlüssel und Werte von beliebigem Typ zulässt, die generische Dictionary<TKey, TValue>-Klasse verwenden und jeweils den für Schlüssel und Wert zulässigen Typ angeben. Zu den Vorteilen von Generika zählen die bessere Codewiederverwendbarkeit und Typsicherheit.
Eine Reihe generischer Auflistungsklassen werden in .NET Framework, im System.Collections.Generic-Namespace und im System.Collections.ObjectModel-Namespace bereitgestellt. Generische Schnittstellen für die Implementierung von Sortierfunktionen und Überprüfungen auf Gleichheit werden im System-Namespace zusammen mit generischen Delegattypen für Ereignishandlern, Konvertierungen und Suchprädikaten bereitgestellt.
Elemente, die um eine Unterstützung von Generika erweitert wurden, sind: System.Reflection zum Untersuchen generischer Typen und generischer Methoden, System.Reflection.Emit zum Ausgeben von dynamischen Assemblys mit generischen Typen und Methoden und System.CodeDom zum generieren von Quelldiagrammen mit Generika.
Visual Basic, C# und Visual C++ unterstützen das Definieren und Verwenden von generischen Typen in vollem Umfang. Die Common Language Runtime bietet neue Opcodes und Präfixe für die Unterstützung generischer Typen in MSIL (Microsoft Intermediate Language).
In diesem Abschnitt
Übersicht über Generika in .NET Framework
Beschreibt das Generikafeature, die damit verbundenen Funktionen von .NET Framework und die Art seiner Offenlegung in der Common Language Runtime.Generische Auflistungen in .NET Framework
Beschreibt generischen Auflistungsklassen und andere generische Auflistungstypen in .NET Framework.Generische Delegaten zum Bearbeiten von Arrays und Listen
Beschreibt generische Delegaten für Konvertierungen, Suchprädikate und Aktionen, die für Elemente eines Arrays oder einer Auflistung ausgeführt werden sollen.Generische Schnittstellen
Beschreibt generische Schnittstellen, um die allgemeine Funktionalität für alle Familien generischer Typen bereitzustellen.Vorteile und Einschränkungen von Generika
Fasst die Vorteile und die Beschränkungen in der Verwendung von Generika zusammen.
Referenz
System.Collections.Generic
Verzeichnet die meisten der generischen Auflistungstypen, die von .NET Framework bereitgestellt werden, z. B. die generische List<T>-Klasse und die generische Dictionary<TKey, TValue>-Klasse.System.Collections.ObjectModel
Verzeichnet zusätzliche generische Auflistungstypen, z. B. die generische ReadOnlyCollection<T>-Klasse, die zum Offenlegen von Objektmodellen für die Benutzer der Klasse nützlich ist.OpCodes
Neue Opcodes und Präfixe wurden für die Unterstützung von Generika hinzugefügt, u. a. Stelem, Ldelem, Unbox_Any, Constrained und Readonly.
Verwandte Abschnitte
Häufig verwendete Auflistungstypen
Bietet eine Zusammenfassung der Merkmale und Verwendungsszenarios der Auflistungstypen in .NET Framework, einschließlich generischer Typen.Verwenden von generischen Auflistungen
Beschreibt die allgemeinen Regeln für Situationen, in denen generische Auflistungstypen verwendet werden können.Reflektion und generische Typen
Erläutert die Verwendung der Reflektion zum Untersuchen generischer Typen und Methoden.Gewusst wie: Definieren eines generischen Typs mit Reflektionsausgabe
Erläutert das Generieren dynamischer Assemblys, die generische Typen und Methoden enthalten.Generische Typen in Visual Basic
Beschreibt das Generikafeature für Visual Basic-Benutzer und enthält Gewusst-wie-Themen zum Verwenden und Definieren generischer Typen.Einführung in Generika (C#-Programmierhandbuch)
Bietet eine Übersicht über das Definieren und Verwenden generischer Typen für C#-Benutzer.Overview of Generics in Visual C++
Beschreibt das Generikafeature für C++-Benutzer, einschließlich der Unterschiede zwischen Generika und Vorlagen.