Unveränderlicher Typ

Autor: Lewis Jackson
Erstelldatum: 8 Kann 2021
Aktualisierungsdatum: 1 Juli 2024
Anonim
Unveränderlicher Typ - Technologie
Unveränderlicher Typ - Technologie

Inhalt

Definition - Was bedeutet unveränderlicher Typ?

Ein unveränderlicher Typ im Con von C # ist ein Objekttyp, dessen Daten nach seiner Erstellung nicht mehr geändert werden können. Ein unveränderlicher Typ legt die Eigenschaft oder den Status des Objekts als schreibgeschützt fest, da er nicht geändert werden kann, nachdem er während der Initialisierung zugewiesen wurde.

Unveränderliche Typen sind für eine effiziente Speicherverwaltung und eine höhere Geschwindigkeit ausgelegt, wodurch sie für Objekte mit Synchronisationsanforderungen geeignet sind. Die Unveränderlichkeit bietet eine bessere Lesbarkeit des Codes, indem Änderungen an der Sichtbarkeit des Programmstatus vorgenommen und die Operationen, die den Status ändern, von denen isoliert werden, die dies nicht tun. Unveränderliche Typen bieten eine höhere Sicherheit als veränderbare Typen.

Ein unveränderlicher Typ wird verwendet, wenn Daten nach einmaliger Zuweisung bestehen bleiben sollen, ohne dass die Daten in Zukunft geändert werden müssen. Da unveränderliche Objekte ihren Status nicht ändern, sind sie in Multithread- und Multiprozess-Szenarien nützlicher, da mehrere Threads ein Objekt lesen oder schreiben können, was zu Rennbedingungen und Synchronisationsproblemen führen kann.


Eine Einführung in Microsoft Azure und die Microsoft Cloud | In diesem Handbuch erfahren Sie, worum es beim Cloud-Computing geht und wie Microsoft Azure Sie bei der Migration und Ausführung Ihres Unternehmens aus der Cloud unterstützen kann.

Techopedia erklärt unveränderlichen Typ

Objekte unveränderlichen Typs können mit den Schlüsselwörtern "const" und "readonly" erstellt werden. Während readonly die Änderung eines Feldes innerhalb des Konstruktors erlaubt, tut const dies nicht. Zahlen, Strings und Null können nur als konstante Felder verwendet werden, die wirklich unveränderlich sind. Readonly ist nicht wirklich unveränderlich, da es nur einmaliges Schreiben erlaubt. Daher ist es keine Konstante zur Kompilierungszeit wie das const-Feld. Wirklich unveränderliche Objekte ändern niemals ihren internen Zustand und sind daher inhärent threadsicher.

Die System.String-Klasse ist ein unveränderlicher Referenztyp, der in der .NET Framework-Klassenbibliothek bereitgestellt wird. Diese Klasse erstellt intern ein neues Zeichenfolgenobjekt für jede Zeichenfolgenmanipulationsaktion. Der Inhalt von Objekten dieses Typs ändert sich nicht, obwohl die Syntax den Eindruck erweckt, dass der Inhalt geändert werden kann. Außerdem wird string als Hash-Tabellenschlüssel für die Berechnung von Hash-Werten verwendet, um das Risiko einer Beschädigung der Hash-Datenstruktur zu vermeiden.

Der Hauptnachteil unveränderlicher Typen besteht darin, dass sie mehr Ressourcen benötigen als andere Objekttypen.


Diese Definition wurde in der con von C # geschrieben