Zapečaten razred

Avtor: Lewis Jackson
Datum Ustvarjanja: 8 Maj 2021
Datum Posodobitve: 25 Junij 2024
Anonim
Zapečaten razred - Tehnologija
Zapečaten razred - Tehnologija

Vsebina

Opredelitev - Kaj pomeni razred zapečatenih?

Zapečaten razred v C # je razred, ki ga noben razred ne more podedovati, vendar ga je mogoče instancirati.


Namen zasnove zapečatenega razreda je navesti, da je razred specializiran in ga ni treba razširiti, da bi z dedovanjem zagotovil dodatne funkcije, da bi prevladali njegovo vedenje. Zapečateni razred se pogosto uporablja za vdelavo logike, ki jo je treba uporabljati v celotnem programu, vendar brez kakršnih koli sprememb.

Zapečaten razred se večinoma uporablja iz varnostnih razlogov, saj preprečuje nenamerno izpeljavo, s katero lahko izpeljani razred poškoduje izvajanje, zagotovljeno v zapečatenem razredu. Ker zapečateni razred ne more tvoriti osnovnega razreda, so klici v zapečatene razrede nekoliko hitrejši, ker omogočajo določene optimizacije izvajanja, kot je na primer priklic funkcij navideznih članov na primerih zapečatenega razreda v ne-virtualne priklice. Zapečateni razred pomaga pri izvedbi različic, saj ne krši združljivosti in hkrati spreminja razred iz zaprtega tipa v nezapečaten.

Nekateri ključni razredi v .NET okvirni knjižnici so zasnovani kot zapečateni razredi, predvsem zaradi omejitve razširljivosti teh razredov.


Uvod v Microsoft Azure in Microsoft Cloud | V tem priročniku boste spoznali, kaj sploh pomeni računalništvo v oblaku in kako vam lahko Microsoft Azure pomaga preseliti in voditi vaše podjetje iz oblaka.

Tehopedija razlaga razred zapečatenih

Za razliko od strukture, ki je implicitno zapečatena, je zapečaten razred deklariran s ključno besedo "zapečaten", da se prepreči naključno dedovanje razreda. Zapečaten razred je lahko uporaben samo, če ima metode z dostopnostjo na javni ravni. Zapečaten razred ne more biti abstrakten razred, saj naj bi abstraktni razred izviral iz drugega razreda, ki zagotavlja izvedbo abstraktnih metod in lastnosti.

Na primer, zapečaten razred DatabaseHelper je mogoče zasnovati z lastnostmi in metodami, ki lahko služijo funkcionalnostim dejanj, povezanih z bazo podatkov, vključno s povezavo z odprto in zaprto bazo podatkov, pridobivanjem in posodabljanjem podatkov itd. Ker opravlja ključne funkcije, ki bi morale ne sme biti poseženo s preglasitvijo v izvedenih razredih, lahko ga oblikujemo kot zapečaten razred.


Tesnjenje omejuje prednost razširljivosti in preprečuje prilagajanje vrst knjižnic. Zato je treba razred skrbno zapreti, ko je natančno odmeril vpliv tesnjenja. Seznam meril, ki jih je treba upoštevati pri zapečatenju razreda, vključuje:
  • Razred je statičen
  • Razred vsebuje podedovane člane, ki predstavljajo občutljive informacije
  • Razred je poizveden za iskanje svojih atributov z metodo refleksije
  • Razred podeduje veliko virtualnih članov, ki jih je treba zapečati
Ta opredelitev je bila napisana v besedilu C #