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: Tume ja helepruuni suhkru erinevus

    Tume ja helepruuni suhkru erinevus

    Peamine erinevus: tänapäeval populaarseks saanud pruun suhkur on valge suhkur melassi lisamisega. Pruun suhkur varieerub helepruunist suhkrust tumepruuni suhkruni. See ei tähenda ainult suhkru värvi, vaid suhkru melassi mahtu. Helepruun suhkur sisaldab 3, 5% melassi kogumahust, samas kui tumepruun suhkur on 6, 5% melassi. Re
  • vahe: Erinevus Hijabi ja Burqa vahel

    Erinevus Hijabi ja Burqa vahel

    Peamine erinevus: Hijab ja burqa on kaks erinevat tüüpi riideid, mis on kättesaadavad islami naistele. Hijab või hejab viitab tegelikult reeglitele. Tavalises igapäevases kontekstis kasutatakse aga sõna, mis viitab peale ulatuvale sallile. Burqa on seevastu lahtine välimine rõivas, mis katab kogu keha pea-to-toe. Hijab
  • vahe: Erinevus Sony Xperia E ja Samsung Galaxy S Duos vahel

    Erinevus Sony Xperia E ja Samsung Galaxy S Duos vahel

    Peamine erinevus: Sony Xperia E ja E-Dual on kaks Sony Mobile'i algtaseme telefoni. Telefonis on 3, 5 TFT mahtuvuslik, millel on ~ 165 ppi pikslitihedus. Kaasas 1 GHz Cortex-A5 Qualcomm Snapdragon protsessor, Adreno 200 GPU ja 512 MB RAM. Samsung Galaxy S Duos on kahe SIM-kaardi telefon, mis käivitati 2012.
  • vahe: Erinevus HTC Windows 8X ja Samsung Galaxy S3 vahel

    Erinevus HTC Windows 8X ja Samsung Galaxy S3 vahel

    Peamised erinevused: HTC Windows 8X spordib 4, 3-tollist S-LCD2 mahtuvuslik puutetundlikku ekraani, mis annab pikslitiheduse 342 ppi. Ekraan on kaitstud gorilla klaasiga 2, mis muudab selle üsna vastupidavaks ja kriimustustele vähem. Telefon on küllalt libe ja õhuke, mis kaalub akuga ainult 130 grammi. Ga
  • vahe: Erinevus Alot, Allot ja Lot

    Erinevus Alot, Allot ja Lot

    Peamised erinevused: Sõna „palju” ei ole tehniliselt inglise keeles. See on "palju". Mõiste „palju” tähendab suurt hulka, suuri summasid või palju. „Allot” tähendab midagi anda kellelegi või pigem anda kellelegi midagi. Termineid „Alot, Allot ja Lot” segatakse sageli kokku. Kuid inimesed ei saa
  • vahe: Erinevus Aloe ja Aloe Vera vahel

    Erinevus Aloe ja Aloe Vera vahel

    Peamised erinevused: Aloe on Plantae Kingdom'i taimede perekond, kus on üle 400 õitsevate mahlakasete taimede liiki. Aloe Vera on Aloe taimestiku üks levinumaid liike, mis arvatakse pärinevat Põhja-Aafrikast. Aloe ja Aloe Vera on kõige sagedamini kuulatud taimedes; Aloe Vera on oma meditsiinilisel otstarbel populaarne taim. Kui
  • vahe: Erinevus Samsung Galaxy S Duos ja Sony Xperia J vahel

    Erinevus Samsung Galaxy S Duos ja Sony Xperia J vahel

    Oluline erinevus: Samsung Galaxy S Duos on 2012. aasta septembris käivitatud dual-SIM telefon. Telefonis on 4-tolline TFT mahtuvuslik puutetundlik ekraan, mille tihedus on umbes 233 ppi. Seadmel on Samsungi TouchWizi kasutajaliides Android 4.0.4 ICS-is. Xperia J kuulutati 2012. aasta oktoobris välja Xperia T odavamana variandina, mille tulemuseks oli telefon sarnase kujundusega.
  • vahe: Erinevus piiskopi ja pastori vahel

    Erinevus piiskopi ja pastori vahel

    Peamised erinevused: Kristluses tähendavad need kaks mõistet üldiselt sama asja. Mõlemad viitavad inimestele, kellel on juhtroll, et suunata ja nõustada inimesi nende vaimsuse suhtes. Rooma katoliku kirikus on piiskop kontor, kus nad vastutavad rühmade koguduste ja koguduste eest. Religioon on piisavalt segane, ilma et peaks ka tegelema bifurkatsioonide ja hierarhiaga; ja just sellised on piiskopid ja pastorid. Mõle
  • vahe: Erinevus Plaza ja Piazza vahel

    Erinevus Plaza ja Piazza vahel

    Peamine erinevus: Plaza ja Piazza on avatud, avalik koht, mis asub elava linna või linna lähedal. Termin "plaza" on tuletatud hispaaniakeelsest sõnast, mis viitab avatud väljale. Platsid on avatud kohad või linna väljakud, mida ümbritsevad hooned, kauplused, kauplused ja kontorid. Piazza on itaaliakeelne sõna „plaza”. Plaza ja p

Toimetaja Valik

Erinevus MBA ja PGDM vahel

Peamised erinevused: MBA viitab ärijuhtimisele. See on aste, mis antakse kahe- kuni kolmeaastase juhtimisprogrammi lõpuleviimisele. Selle annab ülikool või ülikooliga seotud asutus. Teisest küljest tähistab PGDM juhtimise magistrikraadi. See on ühe kuni kahe aasta pikkune diplom, mille annab autonoomne asutus. Paljud