Objekt

Definition - Was bedeutet Objekt?

Objekt in C # ist eine Instanz einer Klasse, die dynamisch erstellt wird. Object ist auch ein Schlüsselwort, das ein Alias ​​für den vordefinierten Typ System.Object im .NET Framework ist.

Das einheitliche Typsystem von C # ermöglicht die Definition von Objekten. Diese können benutzerdefiniert sein, Referenz- oder Wertetypen, aber alle erben direkt oder indirekt von System.Object. Diese Vererbung ist implizit, sodass der Typ des Objekts nicht mit System.Object als Basisklasse deklariert werden muss.

Im Allgemeinen ist der Objekttyp nützlich, wenn generische Routinen erstellt werden müssen. Da Variablen eines beliebigen Typs Variablen des Objekttyps zugewiesen werden können, wird der Objekttyp hauptsächlich zum Entwerfen von Klassen verwendet, die Objekte eines beliebigen Typs verarbeiten, mit denen Code wiederverwendet werden kann. Die nicht generischen Auflistungsklassen in der .NET Framework-Bibliothek, z. B. ArrayList, Queue usw., verwenden den Objekttyp, um verschiedene Auflistungen zu definieren.

Ein Objekt wird auch als Instanz bezeichnet.

Technische.me erklärt Object

Ein Objekt besteht aus Instanzmitgliedern, deren Wert es in einer ähnlichen Gruppe von Objekten eindeutig macht.
Alle im C # -Code verwendeten Objekte sind vom Objekttyp.

Wenn ein Objekt instanziiert wird, wird ihm ein Speicherblock zugewiesen und gemäß dem Entwurf konfiguriert, der von der dem Objekt zugrunde liegenden Klasse bereitgestellt wird. Objekte vom Werttyp werden im Stapel gespeichert, während Objekte vom Referenztyp im Heap zugeordnet werden.

Da sich die Ausführung von C # -Code in der verwalteten Umgebung von .NET befindet, in der der Garbage Collector eine automatische Speicherwiederherstellung bereitstellt, ist es nicht erforderlich oder möglich, den für Objekte zugewiesenen Speicher explizit freizugeben. Objekte vom Werttyp werden zerstört, wenn sie den Gültigkeitsbereich verlassen, während Objekte vom Referenztyp nicht deterministisch zerstört werden, bis der letzte Verweis auf sie entfernt wird.

Die beiden Operationen, die sich auf in C # erstellte Objekte beziehen, sind Boxen und Unboxen. Während das Boxen die Konvertierung des Werttyps in ein Objekt impliziert, bezieht sich das Unboxing auf die Konvertierung vom Objekt in einen Werttyp. Box- und Unboxing-Vorgänge müssen sorgfältig ausgeführt werden, da sie die Leistung beeinträchtigen können.

Diese Definition wurde im Kontext von C # geschrieben