Utěsněná třída

Autor: Lewis Jackson
Datum Vytvoření: 8 Smět 2021
Datum Aktualizace: 25 Červen 2024
Anonim
Utěsněná třída - Technologie
Utěsněná třída - Technologie

Obsah

Definice - Co znamená třída Sealed?

Uzavřená třída v C # je třída, kterou nemůže zdědit žádná třída, ale lze ji vytvořit.


Záměrem konstrukce uzavřené třídy je naznačit, že třída je specializovaná a není nutné ji rozšiřovat, aby poskytovala jakékoli další funkce prostřednictvím dědičnosti, aby potlačila její chování. Uzavřená třída se často používá k zapouzdření logiky, která musí být použita v celém programu, ale bez jakékoli změny.

Uzavřená třída se většinou používá z bezpečnostních důvodů tím, že zabraňuje neúmyslnému odvození, kterým by odvozená třída mohla poškodit implementaci poskytnutou v zapečetěné třídě. Protože zapečetěná třída nemůže tvořit základní třídu, volání do zapečetěných tříd jsou o něco rychlejší, protože umožňují určité běhové optimalizace, jako je vyvolání virtuálních členských funkcí na instancích zapečetěné třídy, do ne virtuálních vyvolání. Uzavřená třída pomáhá při vytváření verzí tím, že nenarušuje kompatibilitu, zatímco mění třídu z uzavřeného typu na neuzavřený.


Některé z klíčových tříd v knihovně framework .NET jsou navrženy jako zapečetěné třídy, hlavně proto, aby omezovaly rozšiřitelnost těchto tříd.

Úvod do Microsoft Azure a Microsoft Cloud | V této příručce se dozvíte, o čem cloud computing je a jak vám může Microsoft Azure pomoci migrovat a řídit podnikání z cloudu.

Techopedia vysvětluje Sealed Class

Na rozdíl od struktury, která je implicitně zapečetěna, je uzavřená třída deklarována klíčovým slovem „zapečetěna“, aby se zabránilo náhodnému dědictví třídy. Uzavřená třída může být užitečná, pouze pokud má metody s přístupností na veřejné úrovni. Uzavřená třída nemůže být abstraktní třídou, protože abstraktní třída má být odvozena jinou třídou, která poskytuje implementaci abstraktních metod a vlastností.


Uzavřenou třídu DatabaseHelper lze například navrhnout s vlastnostmi a metodami, které mohou obsluhovat funkce akcí souvisejících s databází, včetně připojení otevřené a uzavřené databáze, načtení a aktualizace dat atd. Protože provádí klíčové funkce, které by měly nelze s ním manipulovat převažujícími ve svých odvozených třídách, může být navržen jako uzavřená třída.

Těsnění omezuje výhodu rozšiřitelnosti a brání přizpůsobení typů knihoven. Proto musí být třída pečlivě zvážena po pečlivém zvážení dopadu utěsnění. Seznam kritérií, která je třeba vzít v úvahu při utěsňování třídy, zahrnuje:
  • Třída je statická
  • Třída obsahuje zděděné členy, které představují citlivé informace
  • Třída je dotázána na načtení jejích atributů pomocí metody reflexe
  • Třída zdědí mnoho virtuálních členů, které je třeba zapečetit
Tato definice byla napsána v konu C #