Förseglad klass

Författare: Lewis Jackson
Skapelsedatum: 8 Maj 2021
Uppdatera Datum: 25 Juni 2024
Anonim
Förseglad klass - Teknologi
Förseglad klass - Teknologi

Innehåll

Definition - Vad betyder Sealed Class?

En förseglad klass, i C #, är en klass som inte kan ärvas av någon klass men kan instanseras.


Designen för en förseglad klass är att indikera att klassen är specialiserad och det finns inget behov av att utöka den för att ge ytterligare funktionalitet genom arv för att åsidosätta dess beteende. En förseglad klass används ofta för att kapsla in en logik som måste användas över hela programmet men utan att ändra det.

En förseglad klass används mest av säkerhetsskäl genom att förhindra oavsiktligt derivat genom vilket den härledda klassen kan förstöra implementeringen som tillhandahålls i den förseglade klassen. Eftersom den förseglade klassen inte kan bilda en basklass, är samtal till förseglade klasser något snabbare eftersom de möjliggör vissa runtime-optimeringar, såsom tillkännagivande av virtuella medlemsfunktioner på instanser av förseglad klass till icke-virtuella invokationer. Stängd klass hjälper till med versioner genom att inte bryta kompatibiliteten medan du ändrar en klass från förseglad typ till otätad.


Vissa av nyckelklasserna i .NET-rambiblioteket är utformade som förseglade klasser, främst för att begränsa utvidgningen av dessa klasser.

En introduktion till Microsoft Azure och Microsoft Cloud | I hela denna guide kommer du att lära dig vad cloud computing handlar om och hur Microsoft Azure kan hjälpa dig att migrera och driva ditt företag från molnet.

Techopedia förklarar Seals Class

Till skillnad från en struktur, som implicit är förseglad, förklaras en förseglad klass med nyckelordet "förseglad" för att förhindra oavsiktlig arv av klassen. En förseglad klass kan vara användbar endast om den har metoder med tillgänglighet på allmän nivå. En förseglad klass kan inte vara en abstrakt klass eftersom den abstrakta klassen är avsedd att härledas av en annan klass som ger implementering av de abstrakta metoderna och egenskaperna.


Till exempel kan en förseglad klass, DatabaseHelper, utformas med egenskaper och metoder som kan betjäna funktionaliteterna i databasrelaterade åtgärder, inklusive öppen och stängd databasanslutning, hämta och uppdatera data, etc. Eftersom den utför avgörande funktioner som borde inte manipuleras genom att åsidosätta i dess härledda klasser, det kan utformas som förseglad klass.

Tätning begränsar fördelen med utdragbarhet och förhindrar anpassning av bibliotekstyper. Därför måste en klass förseglas efter noggrant vägning av inverkan av att försegla den. Listan över kriterier som ska beaktas för tätning av en klass innehåller:
  • Klassen är statisk
  • Klassen innehåller ärvda medlemmar som representerar känslig information
  • Klassen fråges för att hämta sina attribut genom reflektionsmetoden
  • Klassen ärver många virtuella medlemmar som måste förseglas
Denna definition har skrivits i C #