Åsidosätta

Författare: Louise Ward
Skapelsedatum: 6 Februari 2021
Uppdatera Datum: 28 Juni 2024
Anonim
Åsidosätta - Teknologi
Åsidosätta - Teknologi

Innehåll

Definition - Vad betyder åsidosättande?

Åsidosättande, i C #, är ett nyckelord som används för att ersätta en virtuell medlem som definieras i en basklass med definitionen av den medlemmen i den härledda klassen.


Modifieraren för åsidosättning tillåter programmerare att specificera specialiseringen av en befintlig virtuell medlem som ärvts från en basklass för att tillhandahålla en ny implementering av den medlemmen i den härledda klassen. Det kan användas med en metod, egenskap, indexerare eller en händelse som måste modifieras eller utökas i en härledd klass.

Modifieraren för åsidosättning är avsedd att implementera begreppet polymorfism i C #.

Överskridande skiljer sig från nya modifierare genom att den förstnämnda endast används för att åsidosätta en virtuell medlem i en basklass medan den senare också hjälper till att åsidosätta en icke-virtuell medlem definierad i en basklass genom att dölja definitionen i basklassen.

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 Override

Överskridande används oftast i con virtuell metod, där exekveringen av en metodtyp bestäms av runtime-typen för det instans som metoden åberopas på. Under kallelsen behöver inte den som ringer veta att det kallade objektet var ett exempel på härledd klass.


Om Shape till exempel är en basklass som tillhandahåller den grundläggande implementeringen som är vanligt för alla objekt i sin klass, kan den definieras med en virtuell metod, CalculArea. Square kan vara en klass härrörande från Shape, som kan åsidosätta metoden CalculArea för att implementera den logik som krävs för att beräkna arean på en kvadrat.

För att åsidosätta en metod i en härledd klass:

  • Metoden i basklassen måste deklareras med virtuella modifierare.
  • Metoden i basklassen kan vara abstrakt men inte statisk.
  • Tillgångsmodifieraren för metoden i både bas- och härledda klasser bör vara densamma.
  • Metoden bör definieras med samma signatur i både härledda och basklasser.
Denna definition har skrivits i C #