Übersicht über die .NET Framework-Klassenbibliothek
Aktualisiert: November 2007
.NET Framework enthält Klassen, Schnittstellen und Werttypen, die den Entwicklungsprozess beschleunigen und optimieren und den Zugriff auf Systemfunktionen ermöglichen. .NET Framework gewährleistet durch überwiegend CLS-kompatible Typen Interoperabilität zwischen verschiedenen Sprachen und kann daher in jeder Programmiersprache verwendet werden, deren Compiler der CLS (Common Language Specification) entspricht.
Die in .NET Framework verfügbaren Typen bilden die Grundlage für den Entwurf von Anwendungen, Komponenten und Steuerelementen in .NET. .NET Framework umfasst Typen zur Ausführung folgender Funktionen:
Darstellung von Basisdatentypen und -ausnahmen
Kapseln von Datenstrukturen
E/A-Operationen
Zugriff auf Informationen über geladene Typen
Aufrufen von .NET Framework-Sicherheitsüberprüfungen
Datenzugriff und Bereitstellen einer eigenständigen Client-GUI sowie einer servergesteuerten Client-GUI
In .NET Framework stehen neben zahlreichen Schnittstellen abstrakte und konkrete (nicht abstrakte) Klassen zur Verfügung. Sie können die konkreten Klassen unverändert verwenden oder eigene Klassen von ihnen ableiten. Um auf die Funktionen einer Schnittstelle zuzugreifen, können Sie entweder eine Klasse erstellen und die entsprechende Schnittstelle in der Klasse implementieren oder eine Klasse von einer .NET Framework-Klasse ableiten, die die Schnittstelle implementiert.
Benennungskonventionen
Für .NET Framework-Typen wird ein Benennungsschema mit Punktsyntax verwendet, das der hierarchischen Struktur entspricht. Bei diesem Verfahren werden verwandte Typen in Namespaces zusammengefasst, wodurch Suchvorgänge und Verweise vereinfacht werden. Der erste Teil des vollständigen Namens, bis zum letzten Punkt, gibt den Namen des Namespaces wieder. Der letzte Teil ist der Name des Typs. System.Collections.ArrayList stellt z. B. den Typ ArrayList dar, der im Namespace System.Collections enthalten ist. Die Typen in System.Collections werden zum Bearbeiten und Ändern von Objektauflistungen verwendet.
Dieses Benennungsschema erleichtert es Entwicklern von Bibliotheken, die Erweiterungen für .NET Framework entwerfen, hierarchische Typengruppen zu erstellen und diese konsistent und aussagekräftig zu benennen. Außerdem können Typen nach ihrem vollständigen Namen (d. h. ihrem Namespace und Typnamen) eindeutig identifiziert werden, wodurch Konflikte bei Typnamen vermieden werden. Entwickler von Bibliotheken sollten beim Erstellen der Namen für eigene Namespaces die nachstehende Richtlinie befolgen:
CompanyName.TechnologyName
Der Namespace Microsoft.Word beispielsweise entspricht dieser Richtlinie.
Insbesondere für das Erstellen und Dokumentieren von Klassenbibliotheken empfiehlt sich ein Benennungsschema, bei dem verwandte Typen in Namespaces zusammengefasst werden. Dieses wirkt sich jedoch nicht auf Sichtbarkeit, Memberzugriff, Vererbung, Sicherheit oder Bindung aus. Ein Namespace kann von mehreren Assemblys verwendet werden, und eine einzelne Assembly kann Typen aus mehreren Namespaces enthalten. Die Assembly stellt die formale Struktur für Versionsinformationen, Bereitstellung, Sicherheit, Ladevorgänge und Sichtbarkeit in der Common Language Runtime bereit.
Weitere Informationen über Namespaces und Typennamen finden Sie unter Allgemeines Typsystem.
Systemnamespace
Beim System-Namespace handelt es sich um den Stammnamespace für Basistypen in .NET Framework. Dieser Namespace beinhaltet Klassen, die die von allen Anwendungen verwendeten Basisdatentypen darstellen: Object (der Stamm der Vererbungshierarchie), Byte, Char, Array, Int32, String usw. Viele dieser Typen entsprechen den primitiven Datentypen, die in den verschiedenen Programmiersprachen verwendet werden. Wenn Sie Code mithilfe von .NET Framework-Typen schreiben, können Sie anstelle eines erwarteten Basisdatentyps von .NET Framework auch das entsprechende Schlüsselwort der verwendeten Sprache angeben.
In der folgenden Tabelle sind die in .NET Framework verfügbaren Basistypen mit einer Kurzbeschreibung der einzelnen Typen und den entsprechenden Typen in Visual Basic, C#, C++ und JScript aufgeführt.
Kategorie |
Klassenname |
Beschreibung |
Datentyp in Visual Basic |
Datentyp in C# |
C++-Datentyp |
Datentyp in JScript |
---|---|---|---|---|---|---|
Integer |
Eine 8-Bit-Ganzzahl ohne Vorzeichen. |
Byte |
byte |
char |
Byte |
|
|
Eine 8-Bit-Ganzzahl mit Vorzeichen. Nicht CLS-kompatibel. |
SByte |
sbyte |
signed char |
SByte |
|
|
Eine 16-Bit-Ganzzahl mit Vorzeichen. |
Short |
short |
short |
short |
|
|
Eine 32-Bit-Ganzzahl mit Vorzeichen. |
Integer |
int |
int - oder - long |
int |
|
|
Eine 64-Bit-Ganzzahl mit Vorzeichen. |
Long |
long |
__int64 |
long |
|
|
Eine ganze 16-Bit-Zahl ohne Vorzeichen. Nicht CLS-kompatibel. |
UShort |
ushort |
unsigned short |
UInt16 |
|
|
Eine ganze 32-Bit-Zahl ohne Vorzeichen. Nicht CLS-kompatibel. |
UInteger |
uint |
unsigned int - oder - unsigned long |
UInt32 |
|
|
Eine ganze 64-Bit-Zahl ohne Vorzeichen. Nicht CLS-kompatibel. |
ULong |
ulong |
unsigned __int64 |
UInt64 |
|
Gleitkomma |
Eine Gleitkommazahl einfacher Genauigkeit (32 Bit). |
Single |
float |
float |
float |
|
|
Eine Gleitkommazahl doppelter Genauigkeit (64 Bit). |
Double |
double |
double |
double |
|
Logisch |
Ein boolescher Wert (true oder false). |
Boolean |
bool |
bool |
bool |
|
Sonstige |
Ein Unicode-Zeichen (16 Bit). |
Char |
char |
wchar_t |
char |
|
|
Dezimalwert (128 Bit). |
Decimal |
decimal |
Decimal |
Decimal |
|
|
Eine ganze Zahl mit Vorzeichen, deren Größe von der zugrunde liegenden Plattform abhängt (32-Bit-Wert auf einer 32-Bit-Plattform und 64-Bit-Wert auf einer 64-Bit-Plattform). |
IntPtr Kein integrierter Typ. |
IntPtr Kein integrierter Typ. |
IntPtr Kein integrierter Typ. |
IntPtr |
|
|
Eine ganze Zahl, deren Größe von der zugrunde liegenden Plattform abhängt (32-Bit-Wert auf einer 32-Bit-Plattform und 64-Bit-Wert auf einer 64-Bit-Plattform). Nicht CLS-kompatibel. |
UIntPtr Kein integrierter Typ. |
UIntPtr Kein integrierter Typ. |
UIntPtr Kein integrierter Typ. |
UIntPtr |
|
Klassenobjekte |
Der Stamm der Objekthierarchie. |
Object |
object |
Object* |
Object |
|
|
Eine unveränderliche Zeichenfolge fester Länge mit Unicode-Zeichen. |
String |
string |
String* |
String |
Neben den Basisdatentypen umfasst der System-Namespace mehr als 100 Klassen, die von Klassen für die Behandlung von Ausnahmen bis zu Klassen reichen, die für wesentliche Konzepte der Laufzeit vorgesehen sind, beispielsweise Anwendungsdomänen oder der Garbage Collector. Der System-Namespace beinhaltet darüber hinaus zahlreiche Namespaces zweiter Ebene.
Weitere Informationen über Namespaces finden Sie in der .NET Framework-Referenz. In der Referenzdokumentation finden Sie eine Kurzübersicht zu jedem Namespace sowie eine formale Beschreibung aller Typen und der zugehörigen Elemente.
Siehe auch
Referenz
Referenz zur .NET Framework-Klassenbibliothek