Atšķirība starp virtuālo un abstrakto metodi

Galvenā atšķirība: abstraktās metodes ir metodes, kas tiek deklarētas, bet nav īstenotas. Virtuālās metodes tiek izmantotas, lai īstenotu tipa polimorfismu. Atvasinātajai klasei ir elastīga iespēja atkārtoti ieviest bāzes klases virtuālo metodi, izmantojot atslēgvārdu “ignorēt”.

C #, abstraktu atslēgvārdu var izmantot gan ar klasēm, gan metodēm. Abstrakcijas metodes ir tādas metodes, kurām nav jebkāda veida īstenošanas. Tomēr īstenošanas loģiku iegūst no abstraktajām klasēm, kas no tām iegūtas. Tas tiek panākts, ignorējot šo metodi. Tā kā nav faktiskas īstenošanas, metodes struktūra paliek tukša. Ir svarīgi atzīmēt, ka abstrakta metode ir iespējama tikai abstraktā klasē. Klases, kuras nevar inicializēt, sauc par abstraktajām klasēm. Klasei, kas pārņem no abstraktajām klasēm, ir jāīsteno visas abstraktā klasē atzītās metodes.

Piemēram -

publisks abstrakts klases piemērsAbstrakcijaClass

{

publisks abstrakts void exampleabstractMethod ();

publiska virtuālā tukšums, kas nav abstrakts metode ()

{

Console.WriteLine ("Īstenošana ir definēta metodē");

}

class normalNonAbstractClass: exampleAbstractClass

{

publiska ignorēšana void exampleabstractMethod ()

{

Console.WriteLine ("Priekšskatījums klases paraugaAb AbstractClass" eksāmenam);

}

}

Virtuālais ir arī atslēgvārds, kas saistīts ar metodes, īpašuma, indeksētāja vai notikuma deklarācijas modificēšanu. Šī atslēgvārda izmantošana ļauj mainīt deklarēto objektu atvasinātā klasē. Šajā piemērā atvasinātā klase ir ignorējusi bāzes klasē deklarēto virtuālo metodi.

klases bāze

{

publiska virtuālā tukšuma pārbaude ()

{

Console.WriteLine ("Base.Test");

}

}

klase Atvasinātie: Bāze

{

publiska ignorēšana tukšums Test ()

{

Console.WriteLine ("Derived.Test");

}

}

Virtuālās metodes tiek izmantotas, lai īstenotu tipa polimorfismu. Atvasinātajai klasei ir elastīga iespēja atkārtoti ieviest bāzes klases virtuālo metodi, izmantojot atslēgšanas atslēgvārdu. Gan virtuālo, gan abstrakto nevar izmantot kopā ar statiskiem vai virtuāliem vai ignorētājiem.

Virtuālās un abstraktās metodes salīdzinājums:

Virtuālā metode

Abstrakta metode

Definīcija

Virtuālās metodes tiek izmantotas, lai īstenotu tipa polimorfismu.

Abstrakcijas metodes ir metodes, kas tiek deklarētas, bet nav īstenotas.

Īstenošana

Jā, var būt īstenošana

Nē, nevar būt nekāda īstenošana

Nepieciešamība ir jānovērš

Nav obligāta

Obligāts

Atslēgvārds, ko izmanto, lai nošķirtu to no citu veidu metodēm

Virtuālā

Kopsavilkums

Klase

Klases, kas satur virtuālo metodi, var tikt demonstrētas.

Klasi, kas satur abstraktu metodi, nevar iztulkot. To var mantot tikai.

Darbības joma

Virtuālās metodes darbības joma tikai dalībniekiem.

Abstrakta metode attiecas uz dalībniekiem un klasēm.

Izpildāmā metode (objekta bāzes klases tips)

Vecāku īstenošana tiks aicināta tikai tad, ja konkrētajā klasē netiek īstenota.

Konkrēta īstenošana

Izpildāmā metode (objekta-konkrētā klase)

Konkrēta īstenošana

Konkrēta īstenošana

Ieteicams

Saistītie Raksti

  • tautas salīdzinājumi: Atšķirība starp lūpu krāsu un lūpu krāsu

    Atšķirība starp lūpu krāsu un lūpu krāsu

    Galvenā atšķirība: lūpu krāsa un lūpu krāsa pamatā ir viena un tā pati lieta ar dažādiem nosaukumiem. Lūpu krāsa galvenokārt tiek izmantota no vecākiem laikiem kā lūpu aizsardzība lūpu krāsai un tekstūrai, bet lūpu krāsa tiek izmantota daudzu sieviešu vietā lūpu krāsu vietā. Lūpu krāsa un lūpu krāsa ir
  • tautas salīdzinājumi: Atšķirība starp zinātņu bakalauru un mākslas bakalauru

    Atšķirība starp zinātņu bakalauru un mākslas bakalauru

    Galvenā atšķirība: B.Sc. nozīmē Bachelor of Science. Tas ir bakalaura akadēmiskais grāds, kas tiek piešķirts pēc četru līdz piecu gadu zinātnes akadēmiskās programmas pabeigšanas. BA nozīmē mākslas bakalaurs. Tas ir arī bakalaura akadēmiskais grāds, kas tiek piešķirts pēc četru līdz piecu gadu mākslas un literatūras akadēmiskās programmas pabeigšanas. Bakalaura grāds zinātnē un baka
  • tautas salīdzinājumi: Atšķirība starp ieliektu un izliektu

    Atšķirība starp ieliektu un izliektu

    Galvenā atšķirība: ieliekts tiek izmantots, lai aprakstītu jebkuru vienību, kurai ir kontūra, kas izliekas uz iekšpusi. No otras puses, izliekti tiek izmantoti, lai raksturotu objektu, kura kontūra vai virsma izliekas. Termini tiek izmantoti kā īpašības vārdi, lai aprakstītu lēcu, spoguļu, poligonu utt. Veidus. Ieliekt
  • tautas salīdzinājumi: Starpība starp nātriju un sāli

    Starpība starp nātriju un sāli

    Galvenā atšķirība: Nātrija ir mīksts, sudrabaini balts un ļoti reaktīvs metāls, un tas ir sārmu metālu sastāvs. Sāls, pazīstams arī kā akmens sāls vai galda sāls, ir kristālisks minerāls, ko veido nātrija un hlorīda kombinācija. Sāls sastāv no apmēram 40% nātrija un 60% hlorīda. Nātrijs un sāls ir cieši s
  • tautas salīdzinājumi: Starpība starp rīsu pienu un sojas pienu

    Starpība starp rīsu pienu un sojas pienu

    Galvenā atšķirība: rīsu piens ir piena alternatīva, kas izgatavota no rīsu graudiem. Sojas piens ir piena alternatīva no sojas pupām. Gan rīsu piens, gan sojas ir alternatīva govs pienam un citiem piena produktiem. Rīsu pienu gatavo no rīsiem, savukārt sojas pienu gatavo no sojas pupām. Tās ir gan li
  • tautas salīdzinājumi: Atšķirība starp VB un VB.NET

    Atšķirība starp VB un VB.NET

    Galvenā atšķirība: VB apzīmē Visual Basic. Tā ir augsta līmeņa programmēšanas valoda, ko lieto Microsoft, kas tiek izmantota, lai ātri attīstītu Windows balstītas programmas. VB.NET apzīmē Visual Basic Network Enabled Technologies. Tā ir viena no Microsoft .NET sistēmas valodām. Šī valoda ir izveidota tieši VB izstrādātājiem. Tas pieder pie objektori
  • tautas salīdzinājumi: Starpība starp Colgate un Pepsodent

    Starpība starp Colgate un Pepsodent

    Galvenā atšķirība: Colgate ir Colgate-Palmolive apakšgrupa. Colgate nodrošina virkni ar higiēnu saistītu produktu. Nosaukums ir plaši populārs mutes dobuma kopšanas līdzekļiem. Pepsodent ir vēl viens vadošais nosaukums mutes dobuma kopšanas šķīdumos. Tā ir ap 1920. gadu. Tā piedāvā virkni zobu pasta un zobu sukas. Colgate ir nosaukts p
  • tautas salīdzinājumi: Starpība starp reālo skaitu un pilno vērtību

    Starpība starp reālo skaitu un pilno vērtību

    Galvenā atšķirība: reālais skaitlis ir skaitlis, kas skaitļa rindā var uzņemties jebkuru vērtību. Tas var būt jebkurš racionāls un neracionāls skaitlis. Racionālais skaitlis ir skaitlis, ko var izteikt frakcijas formā, bet ar ne-nulles saucēju. Integers ir veselu skaitļu veidi, kas nav frakcijas formā. Integers var būt
  • tautas salīdzinājumi: Atšķirība starp AIDS un HIV

    Atšķirība starp AIDS un HIV

    Galvenā atšķirība: AIDS (iegūta imūndeficīta sindroms) ir seksuāli transmisīva slimība, ko izraisa HIV (cilvēka imūndeficīta vīruss). HIV ir vīruss, kas vājina organisma imūnsistēmu. AIDS un HIV ir savstarpēji saistīti, jo HIV izraisa AIDS. Galvenā atšķirība starp HIV un AIDS ir tā, ka HIV ir vīruss, savukārt AIDS ir slimība. AIDS (iegūta imūndeficīta

Redaktora Izvēle

Starpība starp Dell XPS 10 un iPad

Galvenā atšķirība: Dell XPS 10 ir 10, 1 collu planšetdators, kas ir aprīkots ar tastatūras doku, lai to padarītu par klēpjdatoru. Ekrāns ir HD displejs jaudīgs multi-touch ekrāns ar 1366 x 768 pikseļiem un aptuveni 155 ppi pikseļu blīvumu. Gludai tabletei ir metāla šasija, un tam ir gumijas mugursoma, lai labāk satvertu. iPads ir 9, 7 co