Classe segellada

Autora: Lewis Jackson
Data De La Creació: 8 Ser Possible 2021
Data D’Actualització: 25 Juny 2024
Anonim
how to make a proportional divider for drawing
Vídeo: how to make a proportional divider for drawing

Content

Definició: què significa Classe Sealed?

Una classe segellada, en C #, és una classe que no pot ser heretada per cap classe, però que pot ser instanciada.


La intenció de disseny d'una classe segellada és indicar que la classe està especialitzada i no cal estendre-la per proporcionar cap funcionalitat addicional mitjançant herència per anul·lar el seu comportament. Sovint s’utilitza una classe segellada per encapsular una lògica que s’ha d’utilitzar al programa, però sense cap modificació.

Una classe segellada s'utilitza principalment per motius de seguretat impedint la derivació no desitjada per la qual la classe derivada pugui corrompre la implementació proporcionada a la classe segellada. Com que la classe segellada no pot formar una classe base, les trucades a classes segellades són lleugerament més ràpides perquè permeten certes optimitzacions en temps d'execució, com la invocació de funcions de membres virtuals en casos de classe segellada en invocacions no virtuals. La classe Sealed ajuda a la versió en no trencar la compatibilitat mentre canvia una classe de tipus segellat a no segellat.


Algunes de les classes clau de la biblioteca de framework .NET estan dissenyades com a classes segellades, principalment per limitar l’extensibilitat d’aquestes classes.

Una introducció a Microsoft Azure i al Microsoft Cloud | Durant aquesta guia, podreu conèixer què és la informàtica en núvol i com Microsoft Azure us pot ajudar a migrar i executar el vostre negoci des del núvol.

Techopedia explica Classe Sealed

A diferència d'una estructura, que està implícitament segellada, es declara una classe segellada amb la paraula clau, "segellada" per evitar l'herència accidental de la classe. Una classe tancada només pot ser útil si té mètodes amb accessibilitat a nivell públic. Una classe tancada no pot ser una classe abstracta, ja que la classe abstracta està derivada per una altra classe que proporcioni implementació per als mètodes i propietats abstractes.


Per exemple, una classe segellada, DatabaseHelper, es pot dissenyar amb propietats i mètodes que puguin donar servei a les funcionalitats de les accions relacionades amb la base de dades, inclosa la connexió de bases de dades oberta i tancada, buscar i actualitzar dades, etc. Perquè realitza funcions crucials que haurien de no es pot dominar per sobrevaloració de les seves classes derivades, sinó que es pot dissenyar com a classe segellada.

El segellat restringeix el benefici de l’extensibilitat i impedeix la personalització dels tipus de biblioteca. Per tant, s'ha de segellar una classe després de pesar atentament l'impacte de segellar-la. La llista de criteris a tenir en compte per segellar una classe inclou:
  • La classe és estàtica
  • La classe conté membres heretats que representen informació sensible
  • Es pregunta la classe per recuperar els seus atributs mitjançant el mètode de reflexió
  • La classe hereta molts membres virtuals que han de segellar
Aquesta definició es va escriure amb el número de C #