Virtuaalse ja abstraktse meetodi erinevus

Peamised erinevused: abstraktsed meetodid on meetodid, mis on deklareeritud, kuid ei ole rakendatud. Tüüpipõhise polümorfismi rakendamiseks kasutatakse virtuaalseid meetodeid. Tuletatud klassil on paindlikkus baasklassi virtuaalse meetodi uuesti rakendamisel, kasutades märksõna „ülekirjutamine”.

C # puhul saab abstraktset märksõna kasutada nii klasside kui ka meetoditega. Abstraktsed meetodid on need meetodid, millel puudub igasugune rakendus. Rakendusloogika saadakse siiski nendest tuletatud mittekstraktsetest klassidest. See saavutatakse selle meetodi ülimuslikkusega. Tegeliku rakendamise puudumise tõttu jääb meetodi keha tühjaks. Oluline on märkida, et abstraktse meetodi deklareerimine on võimalik ainult abstraktses klassis. Klassid, mida ei saa lähtestada, on tuntud kui abstraktsed klassid. Abstraktsest klassist päritud klass peab rakendama abstraktses klassis kõik abstraktseks tunnistatud meetodid.

Näiteks -

avalik abstraktne klassinäideAb AbstractClass

{

avalik abstraktne void exampleabstractMethod ();

avalik virtuaalne tühimik, mitteAb AbstractMethod ()

{

Console.WriteLine ("Rakendamine on määratletud meetodis");

}

class normalNonAb AbsztraktClass: exampleAb AbsztraktClass

{

avalik ülekirjutamine tühine exampleabstractMethod ()

{

Console.WriteLine (klassi näiteAbstractClassi eksampleab AbsztraktMetodi ülekirjutamine);

}

}

Virtual on ka märksõna, mis on seotud meetodi, vara, indekseerija või sündmuse deklaratsiooni muutmisega. Selle märksõna kasutamine võimaldab muuta deklareeritud üksust tuletatud klassis. Selles näites on tuletatud klass ületanud baasklassis deklareeritud virtuaalse meetodi.

klassi baas

{

avalik virtuaalne tühimik Test ()

{

Console.WriteLine ("Base.Test");

}

}

klass Tuletatud: Base

{

avaliku ülekande tühistamine Test ()

{

Console.WriteLine ("Derived.Test");

}

}

Tüüpipõhise polümorfismi rakendamiseks kasutatakse virtuaalseid meetodeid. Tuletatud klassil on paindlikkus baasklassi virtuaalse meetodi taaskäivitamisel, kasutades ülekirjutamise märksõna. Nii virtuaalset kui ka abstraktset ei saa kasutada koos staatiliste või virtuaalsete või ülekirjutustega.

Virtuaalse ja abstraktse meetodi võrdlus:

Virtuaalne meetod

Abstraktne meetod

Määratlus

Tüüpipõhise polümorfismi rakendamiseks kasutatakse virtuaalseid meetodeid.

Abstraktsed meetodid on meetodid, mis on deklareeritud, kuid ei ole rakendatud.

Rakendamine

Jah, võib olla rakendamine

Ei, ei saa mingit rakendamist rakendada

Vajadus tühistada

Ei ole kohustuslik

Kohustuslik

Märksõna, mida kasutatakse selle eristamiseks teistest meetoditest

Virtuaalne

Abstraktne

Klass

Virtuaalset meetodit võib klassifitseerida.

Abstraktset meetodit sisaldavat klassi ei ole võimalik kohelda. Seda saab pärida ainult.

Reguleerimisala

Virtuaalse meetodi ulatus ainult liikmetele.

Abstraktse meetodi ulatus liikmete ja klasside suhtes.

Teostatav meetod (objekt-baasi klassi tüüp)

Vanemate rakendamist kutsutakse ainult juhul, kui konkreetses klassis ei rakendata.

Konkreetne rakendamine

Teostatav meetod (objekt-konkreetne klassitüüp)

Konkreetne rakendamine

Konkreetne rakendamine

Soovitatav

Seotud Artiklid

  • vahe: Erinevus CDMA ja GSM vahel

    Erinevus CDMA ja GSM vahel

    Peamised erinevused: CDMA võimaldab mitut sama kanali kasutajat unikaalsete koodide abil. GSM jagab kasutajad ajapiludesse või erinevatesse sagedustesse, kus ainult ühel kasutajal on lubatud korraga kasutada ühte kanali pesa. Mobiiltelefoni ostmisel tavaline inimene tavaliselt ei hooli sellest, millist kanalit ta kasutab, sagedus, andmete edastamise viis või GSM või CDMA; ta hoolib ainult tema eelistatavast ettevõttest (T-Mobile, Reliance, Vodafone jne), telefonitüübist (iPhone, Samsung jne) ning arve tasumise maksumusest (ettemakstud või järelmaksu). Tavalisel
  • vahe: Derealizatsiooni ja depersonalisatsiooni erinevus

    Derealizatsiooni ja depersonalisatsiooni erinevus

    Põhiline erinevus: Depersonalisatsioon on haigus, mille puhul üks tunneb ennast iseseisvalt. Isik jälgib end sellises seisus ka vaatajana. Teisest küljest on derealizatsioon haigus, milles välimine maailm näib olevat kummaline ja võõras. See võib olla seotud ka tajumise anomaaliaga. Depersonalisatsioon ja derealiseerimine on kaks erinevat tingimust. Deperso
  • vahe: Erinevus Samsung Galaxy S5 ja S4 vahel

    Erinevus Samsung Galaxy S5 ja S4 vahel

    Peamised erinevused: Samsung Galaxy S5 on Samsungi uusim nutitelefon. S5 on tolmu- ja veekindel ning omab sõrmejälgede skannerit lisaks südame löögisageduse monitorile, mille paarid on uuendatud S Health App'iga. S5 on täiendanud ka USB 3.0, mis võimaldab kiiremat andmeedastust. Tänane maailm on nii tehnoloogiliselt sõltuv, et nutitelefonid on pigem vajadused kui lihtsalt seadmed. On inim
  • vahe: Erinevus CC ja BCC vahel

    Erinevus CC ja BCC vahel

    Peamine erinevus: “Cc” tähistab “Carbon Copy”, samas kui “Bcc” tähistab “Blind Carbon Copy”. Sisuliselt siis, kui saadate e-kirja, näevad nad kolme välja, mida tuleb aadressiosas täita: To: Esmane saaja Cc: Carbon copy Bcc: pimekoopia “To” on traditsiooniline adresseerimissüsteem, kus sisestatakse selle isiku e-posti aadress, kellele e-kiri on adresseeritud või märgistatud. “Cc” tähistab “Carbon Copy
  • vahe: Erinevus närimiskummi ja närimiskummi vahel

    Erinevus närimiskummi ja närimiskummi vahel

    Peamine erinevus: mullikummi ja närimiskummi vahel on peamine, et mullikumm on mõeldud peamiselt mullide puhumiseks. Seega kipub see olema elastsem ja venivam, muutes seega mullide puhumise lihtsamaks. Närimiskumm kipub olema väiksema suurusega ja närivam. Peaaegu igaühel on kena kummipala. See on suurepärane maitse, hoiab sind häiritud ja hõivatud, samas kui te kasutate oma lõualuu; mis mitte armastada ?! Kuid pa
  • vahe: Erinevus Samsung Galaxy Tab 2 10.1 ja Nexus 10 vahel

    Erinevus Samsung Galaxy Tab 2 10.1 ja Nexus 10 vahel

    Peamised erinevused: Galaxy Tab 2 10.1 on 10, 1-tolline tahvelarvuti, mis käivitati 2012. aasta mais. Tabletid spordivad Plane Line Switching (PLS) TFT mahtuvuslik puutetundlik ekraan, millel on umbes 149 ppi tihedus, mis muudab ekraani eraldusvõime mitte nii suureks. Wi-Fi mudelit toidab 1 GHz kahesüdameline Cortex-A9, samas kui Wi-Fi + Mobile mudel on powered by 1.5G
  • vahe: Erinevus Samsung Galaxy Mega 5.8 ja Samsung Galaxy S3 vahel

    Erinevus Samsung Galaxy Mega 5.8 ja Samsung Galaxy S3 vahel

    Peamine erinevus: Samsung on nüüd laiendanud oma pakkumisi phableti kategoorias, tutvustades Samsung Galaxy Mega 5.8 ja Samsung Galaxy Mega 6.3. Samsung Galaxy Mega 5.8 nimetatakse selliseks, sest selle 5, 8-tolline TFT mahtuvuslik puuteekraan on resolutsiooniga 540 x 960 pikslit. Telefoni toiteallikaks on Dual-core 1, 4 GHz protsessor, millel on 1, 5 GB RAM.
  • vahe: Erinevus kahtlase ja kahtlase vahel

    Erinevus kahtlase ja kahtlase vahel

    Peamine erinevus: Mõiste kahtlane viitab sellele, mis on iseloomu poolest küsitav, midagi, mis on ebausaldusväärne. Kahtlane viitab midagi, millel on ebakindel tulemus või tulemus. See viitab ka arvamuse või veendumuste lahendamisele; midagi, mis on otsustamatu või kõhklev. Seega võib öelda, et midagi, mis on kaheldav, on DOUBT, samas kui midagi, mis on kahtlane, on DOUBT põhjus. Mõisted k
  • vahe: Küsitluste ja uuringute erinevus

    Küsitluste ja uuringute erinevus

    Peamine erinevus: küsitlused ja küsitlused on kaks erinevat meetodit, mida saab teabe saamiseks kasutada. Teadlased kasutavad neid tavaliselt arvamuste hindamiseks ja tagasiside saamiseks. Põhimõtteliselt on nende kahe peamine erinevus asjaolu, et küsitlus on väike, lihtne ja kiire. Kuna uuring võib olla pisut pikk, avatud ja aeganõudev. Küsitl

Toimetaja Valik

Erinevus salajase austaja ja Stalkeri vahel

Peamised erinevused: salajane austaja on keegi, kellele meeldib või on tundeid teise inimese jaoks, kuid võib olla liiga häbelik, et teda või tema lähedale läheneda. Stalker on ka keegi, kellele meeldib või on tundeid teise inimese jaoks. Stalker aga näitab, et kiindumus on vale. See on alati tore, et olla teretulnud; siiski võivad mõned tunnustuse vormid olla teistest agressiivsemad. Salajane