Skillnad mellan virtuell och abstrakt metod

Huvudskillnad: Abstrakta metoder är de metoder som deklareras men saknar genomförande. Virtuella metoder används för en implementering av den typbaserade polymorfismen. Den härledda klassen har flexibiliteten att åter implementera den virtuella metoden för basklassen genom att använda sökordet "åsidosätt".

I C # kan det abstrakta sökordet användas med både klasser och metoder. Sammanfattning metoder är de metoder som saknar någon form av genomförande. Implementeringslogiken erhålls emellertid genom de icke abstrakta klasserna som härrör från dem. Detta uppnås genom att överväga den metoden. På grund av avsaknaden av verkligt genomförande förblir kroppens metod tom. Det är viktigt att notera att deklarationen av en abstrakt metod endast är möjlig i en abstrakt klass. De klasser som inte kan initieras kallas abstrakta klasser. En klass som ärver från en abstrakt klass måste genomföra alla metoder som deklareras som abstrakta i abstraktklassen.

Till exempel -

offentligt abstrakt klassexempelAbstractClass

{

offentligt abstrakt tomt exempelabstraktMetod ();

allmän virtuell void nonAbstractMethod ()

{

Console.WriteLine ("Implementering definieras i metoden");

}

klass normalNonAbstractClass: exampleAbstractClass

{

offentlig åsidosätt tomt exempelabstraktMetod ()

{

Console.WriteLine ("Överträffa exempletabstractMethod i klassexempletAbstractClass");

}

}

Virtual är också ett nyckelord som är associerat med modifieringen av en metod, egenskap, indexer eller händelsedeklaration. Användningen av det här sökordet gör det möjligt att ändra den deklarerade enheten i en härledd klass. I detta exempel har den härledda klassen överskridit den virtuella metoden som deklarerats i basklassen.

klassbasen

{

offentligt virtuellt tomrumstest ()

{

Console.WriteLine ( "Base.test");

}

}

klass avledd: bas

{

offentligt åsidosätt tomtest ()

{

Console.WriteLine ( "Derived.Test");

}

}

Virtuella metoder används för en implementering av den typbaserade polymorfismen. Den härledda klassen har flexibiliteten att re-implementera den virtuella metoden för basklassen genom att använda överstyrningsordet. Både virtuellt och abstrakt kan inte användas tillsammans med statiska eller virtuella eller överstyrda modifierare.

Jämförelse mellan virtuell och abstrakt metod:

Virtuell metod

Abstrakt metod

Definition

Virtuella metoder används för en implementering av den typbaserade polymorfismen.

Sammanfattning metoder är de metoder som deklareras men har ingen genomförande.

Genomförande

Ja, kan ha genomförande

Nej, kan inte ha någon implementering

Behöver övervägas

Inte obligatorisk

Obligatorisk

Nyckelord används för att skilja det från andra typer av metoder

Virtuell

Abstrakt

Klass

Klass som innehåller virtuell metod kan ordnas.

Klass som innehåller abstrakt metod kan inte instansieras. Det kan bara vara ärftligt.

Omfattning

Virtuell metod är endast omfattande för medlemmar.

Sammanfattning metodens räckvidd till medlemmar och klasser.

Metod som ska utföras (objekt-bas klass klass)

Föräldraimplementering kommer endast att ringas om det inte finns något genomförande i konkreta klassen.

Betongimplementering

Metod som ska utföras (objektbetongklasstyp)

Betongimplementering

Betongimplementering

Rekommenderas

Relaterade Artiklar

  • populära jämförelser: Skillnad mellan NEFT och EFT

    Skillnad mellan NEFT och EFT

    Huvudskillnad : "NEFT" står för National Electronic Fund Transfer. "NEFT" i Indien, är kopplad till ett elektroniskt fondöverföringssystem, där transaktioner löses elektroniskt mellan bankerna och anläggningen är tillgänglig nationellt. "EFT" står för elektronisk överföring av pengar. Denna term k
  • populära jämförelser: Skillnad mellan hyreshus och betalande gäst

    Skillnad mellan hyreshus och betalande gäst

    Huvudskillnad: Hyreshus är ett slags boende vilket innebär att hela huset ges till hyresgästen medan Paying Guest hänvisar till ett annat sätt att tillhandahålla boende där gästen vanligtvis tillhandahålls en del av huset och ägaren brukar ta hand om maten tillsammans med logi faciliteter. En gäst behöver dela utrymmet med ägaren. Om en perso
  • populära jämförelser: Skillnad mellan Nordamerika och Sydamerika

    Skillnad mellan Nordamerika och Sydamerika

    Huvudskillnad: Nordamerika och Sydamerika är två kontinenter. Både Nordamerika och Sydamerika ligger på västra halvklotet, dvs väster om prime meridianen. Men Nordamerika ligger på norra halvklotet, dvs norr om ekvatorn, medan Sydamerika ligger i södra Sydamerika, dvs söder om ekvatorn. Tillsammans kallas Nordamerika och Sydamerika ofta som Amerika. Världen
  • populära jämförelser: Skillnad mellan makeup och makeover

    Skillnad mellan makeup och makeover

    Huvudskillnad: Smink är en slang och populärt använd term för kosmetika, men kan också hänvisa till olika typer av kosmetika samt protesmakeup, vilket är processen med formning, formning och gjutningsprosthet för att se ut som verklig hud. Makeover är en term som avser att ändra sitt utseende, ibland gjort med kosmetika men behöver inte nödvändigtvis inkludera det. Gör över är
  • populära jämförelser: Skillnad mellan prokaryot och eukaryot cell

    Skillnad mellan prokaryot och eukaryot cell

    Huvudskillnad: Huvudskillnaden mellan de två cellerna är att prokaryota celler i grunden saknar kärnor, medan eukaryota celler har verkliga kärnor. Eukaryota celler är större och mer komplexa än de prokaryota cellerna. Alla levande organismer kan sorteras i en av två grupper beroende på den grundläggande strukturen hos sina celler. De två h
  • populära jämförelser: Skillnad mellan prokaryoter och eukaryoter

    Skillnad mellan prokaryoter och eukaryoter

    Huvudskillnad mellan prokaryoter och eukaryoter baseras på deras olika storlek och cellstruktur. Alla levande organismer kan delas in i två grupper baserat på deras grundläggande celler. Följaktligen kan de klassificeras som prokaryoter och eukaryoter. Denna artikel skiljer mellan de två klasserna av organismer. Prok
  • populära jämförelser: Skillnad mellan konst och scener

    Skillnad mellan konst och scener

    Huvudskillnad: Konst kan definieras som ett brett spektrum av mänskliga aktiviteter och produkterna av dessa aktiviteter. Medan det finns olika konstkategorier är två av de mest kända kategorierna konstkunskap och scenekonst. Konst är en typ av konst som har skapats för att vara visuellt och estetisk tilltalande. Perf
  • populära jämförelser: Skillnad mellan fettsugning och bukplastik

    Skillnad mellan fettsugning och bukplastik

    Huvudskillnad: Fettsugningen är en behandling av fettuttag från kroppens skrymmande del, medan bukplastik är en metod där fettet endast extraheras från buken. Enligt Wikipedia: Fettsugning är också känt som "lipoplasty" ("fettmodellering"), vilket involverar "liposkikt"; "suglipektomi": sugassistent fettfjernande. Fettsu
  • populära jämförelser: Skillnad mellan jordbruk och bevattning

    Skillnad mellan jordbruk och bevattning

    Huvudskillnad : Jordbruk är praxis att odla mat och uppfödning av djur för mat och livsmedelsprodukter. Bevattning är att leverera torrt land med vatten, särskilt under jordbruket. Historien visar att vi alltid har varit beroende av jordbruket för vår överlevnad. Var det kryddor, grödor, kläder, möbler etc. Vi har od

Redaktionen

Skillnad mellan PC-spel och Xbox

Viktig skillnad: PC- och Xbox-spel är ljudvideospel. PC-spel är allmänna dataspel, medan Xbox-spel är serier och lista över spel som kan spelas på Xbox-spelkonsolerna, som utvecklas och produceras av Microsoft. PC-spel är de allmänna datorspel som spelas på endast datorer. Dessa spel föredras av spelarna för underhållningsändamålet. Dessa spel f