Versiegelte Klasse

Autor: Lewis Jackson
Erstelldatum: 8 Kann 2021
Aktualisierungsdatum: 14 Kann 2024
Anonim
Destiny 2 ► Versiegelte Truhen Standorte | Krystrokren Rüstung bekommen
Video: Destiny 2 ► Versiegelte Truhen Standorte | Krystrokren Rüstung bekommen

Inhalt

Definition - Was bedeutet Siegelklasse?

Eine versiegelte Klasse in C # ist eine Klasse, die von keiner Klasse geerbt, sondern instanziiert werden kann.


Mit der Entwurfsabsicht einer versiegelten Klasse soll angegeben werden, dass die Klasse spezialisiert ist, und es ist nicht erforderlich, sie zu erweitern, um zusätzliche Funktionen durch Vererbung bereitzustellen, um ihr Verhalten zu überschreiben. Eine versiegelte Klasse wird häufig verwendet, um eine Logik zu kapseln, die im gesamten Programm verwendet werden muss, ohne dass Änderungen daran vorgenommen werden.

Eine versiegelte Klasse wird hauptsächlich aus Sicherheitsgründen verwendet, um eine unbeabsichtigte Ableitung zu verhindern, durch die die abgeleitete Klasse die in der versiegelten Klasse bereitgestellte Implementierung beschädigen kann. Da die versiegelte Klasse keine Basisklasse bilden kann, sind Aufrufe an versiegelte Klassen etwas schneller, da sie bestimmte Laufzeitoptimierungen ermöglichen, z. B. das Aufrufen von Funktionen virtueller Member in Instanzen versiegelter Klassen in nicht-virtuellen Aufrufen. Die versiegelte Klasse hilft bei der Versionierung, indem sie die Kompatibilität nicht beeinträchtigt, während eine Klasse vom versiegelten Typ zum nicht versiegelten Typ geändert wird.


Einige der Schlüsselklassen in der .NET Framework-Bibliothek sind als versiegelte Klassen konzipiert, um die Erweiterbarkeit dieser Klassen zu beschränken.

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 Sealed Class

Im Gegensatz zu einer implizit versiegelten Struktur wird eine versiegelte Klasse mit dem Schlüsselwort "seal" deklariert, um eine versehentliche Vererbung der Klasse zu verhindern. Eine versiegelte Klasse kann nur dann nützlich sein, wenn sie über Methoden verfügt, die auf öffentlicher Ebene zugänglich sind. Eine versiegelte Klasse kann keine abstrakte Klasse sein, da die abstrakte Klasse von einer anderen Klasse abgeleitet werden soll, die die Implementierung der abstrakten Methoden und Eigenschaften bereitstellt.


Beispielsweise kann eine versiegelte Klasse, DatabaseHelper, mit Eigenschaften und Methoden entworfen werden, mit denen die Funktionen datenbankbezogener Aktionen, einschließlich offener und geschlossener Datenbankverbindungen, Abrufen und Aktualisieren von Daten usw., ausgeführt werden können Sie darf nicht durch Überschreiben der abgeleiteten Klassen manipuliert werden. Sie kann als versiegelte Klasse konzipiert werden.

Das Versiegeln schränkt den Vorteil der Erweiterbarkeit ein und verhindert das Anpassen von Bibliothekstypen. Daher muss eine Klasse versiegelt werden, nachdem die Auswirkungen der Versiegelung sorgfältig abgewogen wurden. Die Liste der Kriterien, die für das Versiegeln einer Klasse zu berücksichtigen sind, umfasst:
  • Die Klasse ist statisch
  • Die Klasse enthält geerbte Mitglieder, die vertrauliche Informationen darstellen
  • Die Klasse wird abgefragt, um ihre Attribute über die Reflektionsmethode abzurufen
  • Die Klasse erbt viele virtuelle Mitglieder, die versiegelt werden müssen
Diese Definition wurde in der con von C # geschrieben