Protsesside selgus tarkvaraarenduses muutub üha olulisemaks, eriti objektorienteeritud programmeerimise puhul. Selle programmeerimise viisi keskne aspekt on polümorfism. Sügavama arusaamisega sinu rakendusloogikast saad luua paindlikumaid ja hooldatavamaid programme. Sukeldugem koos polümorfismi maailma ja kogegem kontseptsioone praktiliste näidete kaudu.

Olulisemad järeldused

Polümorfism võimaldab objektidel esineda erinevates vormides. See saavutatakse meetodite ülekirjutamise ja ülelaadimise kaudu. Peamised kontseptsioonid sisaldavad:

  • vaiksete meetodite kasutamine baasklassides
  • „override“ rakendamine alamklassides
  • objektide türbimiseks mõeldud kontseptsioon
  • funktsionaalsuste laiendamine uute funktsioonide lihtsa lisamise kaudu

Sammsammuline juhend

Samm 1: Polümorfismi tutvustamine

Et mõista polümorfismi C#-s understand, vaatame esmalt aluskonsepti. Mõisted pärineb kreekakeelsest sõnast, mis tähendab "palju vormi". Objektorienteeritud programmeerimises on tegemist sellega, et meetod baasklassis saab olla ülekirjutatud ja ülelaaditud alamklassides. See võimaldab sul kasutada ühiseid liideseid, samal ajal kui sa määratled rakenduse uuesti.

Mõista Polymorphiat C#-is praktiliste näidete kaudu

Samm 2: Struktuuri loomine

Alusta põhilise struktuuri loomist, mis määratleb baasklass. Antud juhul kasutame klassi nimega Auto. See klass peaks samuti sisaldama meetodit, mida nimetatakse „TÜV“. Meetod kuulutatakse baasklassis, kuid ei ole veel rakendatud.

Mõista Polümorfismi C#-s praktiliste näidete abil

Samm 3: Alamklasside määratlemine

Nüüd saad luua alamklassid PKW ja LKW. Iga alamklass peaks laiendama baasklassi Auto. Nendes klassides rakendad meetodit TÜV võtmesõnaga override. See kohandab baasklassi meetodit nii, et igal alamklassil on oma spetsiifiline loogika.

Mõista Polümorfismi C# praktiseeritavate näidete kaudu

Samm 4: Virtuaalse meetodi rakendamine

Enne TÜV meetodi ülekirjutamist alamklassides tuleb baasklassides määratleda võtmesõna virtual. See annab teada, et tema meetodit saab ülekirjutada.

Samm 5: Objectide loendi loomine

Et polümorfismi edasi uurida, loo loend, mis saab salvestada nii PKW- kui LKW-objekte. C#-s saad seda teha tüübi List abil. Veendu, et lisad õige using-direktiivi genereerivate kogumite jaoks.

Samm 6: Objektide lisamine loendisse

Selles loendis saad luua mitmeid PKW- ja LKW-objekte. Need objektid eraldatakse kogumis komaga. On oluline teada, et kuigi liikmed on erinevad, jagavad kõik loendi objektid baasklass Auto tüüpi.

Samm 7: Polümorfismi kutsumine

Nüüd, kus sul on loend, loo foreach-silmus, mis iterates läbi kõigi nende objektide. Iga kord, kui objektiga tegeletakse, kutsu TÜV meetod. Sõltuvalt objekti tüübist kasutatakse alamklassi spetsiifilist rakendust.

Samm 8: Tulemuse analüüsimine

Lase programmil töötada ja vaata väljundit. See näitab, millal iga auto TÜVi läks. Polümorfism tagab, et vastava alamklassi TÜV meetodit kutsutakse, mitte baasklassi oma.

Samm 9: Testi "override" mõju

Saada selgust override võtmesõna toimimise kohta, eemaldades selle ajutiselt PKW klassist. Mida näed, kui programm töötab uuesti? Baasklassi meetod peaks siis olema kutsutud, mis näitab, kui tähtis on override.

Mõista Polymorphie C#-s praktiliste näidete kaudu

Samm 10: Rakenduse laiendamine

Et süvendada oma arusaamist polümorfismist, saad luua uusi meetodeid, nagu tankimine, ja teha sarnaseid samme. Vaata, kui paindlik on sinu lähenemine ja harjuta kontseptsioone edasi.

Kokkuvõte – Polümorfism C#: Juhend arusaamiseks ja praktiliseks rakendamiseks

Polümorfism on fundamentaalne kontseptsioon objektorienteeritud programmeerimises, mis võimaldab sul kirjutada paindlikku ja laiendatavat tarkvara. Virtuaalsete meetodite ja alamklasside meetodite ülekirjutamise kaudu suureneb sinu koodi taaskasutatavus ja hooldatavus. Siin oled õppinud, kuidas luua baasklass ja selle alamklassid, hallata objekte loendis ning neid tõhusalt polümorfselt kutsuda.

Korduma kippuvad küsimused

Kuidas kasutada võtmesõna virtual?Võtmesõna virtual kasutatakse baasklassis, et näidata, et alamklassides saab meetodit ülekirjutada.

Mida teeb võtmesõna override?override võimaldab alamklassil baasklassi meetodit uuesti määratleda.

Kuidas luua erinevat tüüpi objektide loendit?Sa saad kasutada List tüüpi, et salvestada nii PKW- kui LKW-objekte loendis.

Mida juhtub, kui eemaldan override?Ilma override’ita käivitub baasklassi meetod, mitte alamklassi rakendus.

Kuidas ma saan oma rakendust edaspidi testida?Sa saad luua uusi meetodeid ja lisada erinevaid objekte, et näha, kuidas polümorfism töötab.