Übersicht über die .NET Framework-Klassenbibliothek.NET Framework Class Library Overview

.NET Framework.NET Framework enthält Klassen, Schnittstellen und Werttypen, die den Entwicklungsprozess beschleunigen und optimieren und den Zugriff auf Systemfunktionen ermöglichen.The .NET Framework.NET Framework includes classes, interfaces, and value types that expedite and optimize the development process and provide access to system functionality. .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.To facilitate interoperability between languages, most .NET Framework types are CLS-compliant and can therefore be used from any programming language whose compiler conforms to the common language specification (CLS).

Die in .NET Framework verfügbaren Typen bilden die Grundlage für den Entwurf von Anwendungen, Komponenten und Steuerelementen in .NET.The .NET Framework types are the foundation on which .NET applications, components, and controls are built. .NET Framework.NET Framework umfasst Typen zur Ausführung folgender Funktionen:The .NET Framework.NET Framework includes types that perform the following functions:

  • Darstellung von Basisdatentypen und -ausnahmenRepresent base data types and exceptions.

  • Kapseln von DatenstrukturenEncapsulate data structures.

  • E/A-OperationenPerform I/O.

  • Zugriff auf Informationen über geladene TypenAccess information about loaded types.

  • Aufrufen von .NET Framework-SicherheitsüberprüfungenInvoke .NET Framework security checks.

  • Datenzugriff und Bereitstellen einer eigenständigen Client-GUI sowie einer servergesteuerten Client-GUIProvide data access, rich client-side GUI, and server-controlled, client-side GUI.

In .NET Framework.NET Framework stehen neben zahlreichen Schnittstellen abstrakte und konkrete (nicht abstrakte) Klassen zur Verfügung.The .NET Framework.NET Framework provides a rich set of interfaces, as well as abstract and concrete (non-abstract) classes. Sie können die konkreten Klassen unverändert verwenden oder eigene Klassen von ihnen ableiten.You can use the concrete classes as is or, in many cases, derive your own classes from them. 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.To use the functionality of an interface, you can either create a class that implements the interface or derive a class from one of the .NET Framework classes that implements the interface.

NamenskonventionenNaming Conventions

Für .NET Framework-Typen wird ein Benennungsschema mit Punktsyntax verwendet, das der hierarchischen Struktur entspricht..NET Framework types use a dot syntax naming scheme that connotes a hierarchy. Bei diesem Verfahren werden verwandte Typen in Namespaces zusammengefasst, wodurch Suchvorgänge und Verweise vereinfacht werden.This technique groups related types into namespaces so they can be searched and referenced more easily. Der erste Teil des vollständigen Namens, bis zum letzten Punkt, gibt den Namen des Namespaces wieder.The first part of the full name — up to the rightmost dot — is the namespace name. Der letzte Teil ist der Name des Typs.The last part of the name is the type name. System.Collections.ArrayList ist z.B. vom Typ ArrayList, der zum Namespace System.Collections gehört.For example, System.Collections.ArrayList represents the ArrayList type, which belongs to the System.Collections namespace. Die Typen in System.Collections werden zum Bearbeiten und Ändern von Objektsammlungen verwendet.The types in System.Collections can be used to manipulate collections of objects.

Dieses Benennungsschema erleichtert es Entwicklern von Bibliotheken, die Erweiterungen für .NET Framework.NET Framework entwerfen, hierarchische Typengruppen zu erstellen und diese konsistent und aussagekräftig zu benennen.This naming scheme makes it easy for library developers extending the .NET Framework.NET Framework to create hierarchical groups of types and name them in a consistent, informative manner. 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.It also allows types to be unambiguously identified by their full name (that is, by their namespace and type name), which prevents type name collisions. Von Entwicklern von Bibliotheken wird erwartet, dass sie sich beim Erstellen der Namen für eigene Namespaces an die nachstehende Konvention halten:Library developers are expected to use the following convention when creating names for their namespaces:

CompanyName.TechnologyNameCompanyName.TechnologyName

Der Namespace Microsoft.Word beispielsweise entspricht dieser Richtlinie.For example, the namespace Microsoft.Word conforms to this guideline.

Insbesondere für das Erstellen und Dokumentieren von Klassenbibliotheken empfiehlt sich ein Benennungsschema, bei dem verwandte Typen in Namespaces zusammengefasst werden.The use of naming patterns to group related types into namespaces is a very useful way to build and document class libraries. Dieses wirkt sich jedoch nicht auf Sichtbarkeit, Memberzugriff, Vererbung, Sicherheit oder Bindung aus.However, this naming scheme has no effect on visibility, member access, inheritance, security, or binding. Ein Namespace kann von mehreren Assemblys verwendet werden, und eine einzelne Assembly kann Typen aus mehreren Namespaces enthalten.A namespace can be partitioned across multiple assemblies and a single assembly can contain types from multiple namespaces. Die Assembly stellt die formale Struktur für Versionsinformationen, Bereitstellung, Sicherheit, Ladevorgänge und Sichtbarkeit in der Common Language Runtime bereit.The assembly provides the formal structure for versioning, deployment, security, loading, and visibility in the common language runtime.

Weitere Informationen über Namespaces und Typennamen finden Sie unter Allgemeines Typsystem.For more information on namespaces and type names, see Common Type System.

SystemnamespaceSystem Namespace

Beim System-Namespace handelt es sich um den Stammnamespace für Basistypen in .NET Framework.NET Framework.The System namespace is the root namespace for fundamental types in the .NET Framework.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.This namespace includes classes that represent the base data types used by all applications: Object (the root of the inheritance hierarchy), Byte, Char, Array, Int32, String, and so on. Viele dieser Typen entsprechen den primitiven Datentypen, die in den verschiedenen Programmiersprachen verwendet werden.Many of these types correspond to the primitive data types that your programming language uses. 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.When you write code using .NET Framework types, you can use your language's corresponding keyword when a .NET Framework base data type is expected.

In der folgenden Tabelle sind die in .NET Framework.NET Framework verfügbaren Basistypen mit einer Kurzbeschreibung der einzelnen Typen und den entsprechenden Typen in Visual Basic, C#, C++ und JScript aufgeführt.The following table lists the base types that the .NET Framework.NET Framework supplies, briefly describes each type, and indicates the corresponding type in Visual Basic, C#, C++, and JScript.

KategorieCategory KlassennameClass name BeschreibungDescription Datentyp in Visual BasicVisual Basic data type Datentyp in C#C# data type C++-DatentypC++ data type Datentyp in JScriptJScript data type
Ganze ZahlInteger Byte Eine 8-Bit-Ganzzahl ohne Vorzeichen.An 8-bit unsigned integer. ByteByte bytebyte unsigned charunsigned char ByteByte
SByte Eine 8-Bit-Ganzzahl mit Vorzeichen.An 8-bit signed integer.

Nicht CLS-kompatibel.Not CLS-compliant.
SByteSByte sbytesbyte charchar

- oder - -or-

char mit Vorzeichensigned char
SByteSByte
Int16 Eine 16-Bit-Ganzzahl mit Vorzeichen.A 16-bit signed integer. ShortShort shortshort shortshort shortshort
Int32 Eine 32-Bit-Ganzzahl mit Vorzeichen.A 32-bit signed integer. IntegerInteger intint intint

- oder - -or-

longlong
intint
Int64 Eine 64-Bit-Ganzzahl mit Vorzeichen.A 64-bit signed integer. LongLong longlong __int64__int64 longlong
UInt16 Eine 16-Bit-Ganzzahl ohne Vorzeichen.A 16-bit unsigned integer.

Nicht CLS-kompatibel.Not CLS-compliant.
UShortUShort ushortushort unsigned shortunsigned short UInt16UInt16
UInt32 Eine 32-Bit-Ganzzahl ohne Vorzeichen.A 32-bit unsigned integer.

Nicht CLS-kompatibel.Not CLS-compliant.
UIntegerUInteger uintuint unsigned intunsigned int

- oder - -or-

unsigned longunsigned long
UInt32UInt32
UInt64 Eine 64-Bit-Ganzzahl ohne Vorzeichen.A 64-bit unsigned integer.

Nicht CLS-kompatibel.Not CLS-compliant.
ULongULong ulongulong __int64 ohne Vorzeichenunsigned __int64 UInt64UInt64
GleitkommaFloating point Single Eine Gleitkommazahl einfacher Genauigkeit (32 Bit).A single-precision (32-bit) floating-point number. SingleSingle floatfloat floatfloat floatfloat
Double Eine Gleitkommazahl doppelter Genauigkeit (64 Bit).A double-precision (64-bit) floating-point number. DoubleDouble doubledouble doubledouble doubledouble
LogischLogical Boolean Ein boolescher Wert (true oder false).A Boolean value (true or false). BooleanBoolean boolbool boolbool boolbool
AndereOther Char Ein Unicode-Zeichen (16 Bit).A Unicode (16-bit) character. CharChar charchar wchar_twchar_t charchar
Decimal Dezimalwert (128 Bit).A decimal (128-bit) value. DecimalDecimal decimaldecimal DecimalDecimal DecimalDecimal
IntPtr 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).A signed integer whose size depends on the underlying platform (a 32-bit value on a 32-bit platform and a 64-bit value on a 64-bit platform). IntPtrIntPtr

Kein integrierter Typ.No built-in type.
IntPtrIntPtr

Kein integrierter Typ.No built-in type.
IntPtrIntPtr

Kein integrierter Typ.No built-in type.
IntPtrIntPtr
UIntPtr 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).An unsigned integer whose size depends on the underlying platform (a 32- bit value on a 32-bit platform and a 64-bit value on a 64-bit platform).

Nicht CLS-kompatibel.Not CLS-compliant.
UIntPtrUIntPtr

Kein integrierter Typ.No built-in type.
UIntPtrUIntPtr

Kein integrierter Typ.No built-in type.
UIntPtrUIntPtr

Kein integrierter Typ.No built-in type.
UIntPtrUIntPtr
ass-Objekteass objects Object Der Stamm der Objekthierarchie.The root of the object hierarchy. ObjektObject objectobject objekt\*Object*** ObjektObject
String Eine unveränderliche Zeichenfolge fester Länge mit Unicode-Zeichen.An immutable, fixed-length string of Unicode characters. StringString stringstring string\*String*** StringString

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.In addition to the base data types, the System namespace contains over 100 classes, ranging from classes that handle exceptions to classes that deal with core runtime concepts, such as application domains and the garbage collector. Der System-Namespace beinhaltet darüber hinaus zahlreiche Namespaces zweiter Ebene.The System namespace also contains many second-level namespaces.

Weitere Informationen zu Namespaces finden Sie in der .NET Framework-Klassenbibliothek.For more information about namespaces, browse the .NET Framework Class Library. In der Referenzdokumentation finden Sie eine Kurzübersicht zu jedem Namespace sowie eine formale Beschreibung aller Typen und der zugehörigen Elemente.The reference documentation provides a brief overview of each namespace as well as a formal description of each type and its members.

Siehe auchSee Also

Allgemeines TypsystemCommon Type System
.NET Framework-Klassenbibliothek.NET Framework Class Library
ÜbersichtOverview