Mida tähendab “mitmekordne pärimine”?

Objektorienteeritud programmeerimise (OOP) keeltest rääkides on mitmikpärimine termin, mis viitab klassile, mis pärib funktsioonid rohkem kui ühest vanemklassist. Mõistet ei saa täielikult mõista, kui ei mõista, mis klass on. Klassi väga lühike määratlus on OOP-keeles programmeerimisjuhiste või koodide kogum, mis kirjeldab olemi olemust ja on selle olemus. Klassid määratlevad kõik olemi omadused ja sisaldavad kõiki nende omadustega manipuleerimiseks vajalikke meetodeid.

Sõltuvalt kodeeritavast programmist võib tekkida vajadus kirjutada palju klasse, millel on ühised asjad, kuid mis peavad jääma eraldiseisvateks üksusteks. Siin tuleb mängu mitmekordne pärimine. Näiteks tehnoloogilised edusammud, mis võimaldaksid ehitada allveelaeva, mis võiks lennata nagu lennuk, või lennukit, mis võiks sukelduda nagu allveelaev, toodaks hübriidtoote. Sellel hübriidil oleksid mõned samad omadused nagu lennukil ja mõned allveelaeva omadused, kuid see oleks ainulaadne toode või üksus. Mitu pärimist võimaldaks hübriidil hõlpsalt pärida funktsionaalsust lennukiklassist ja funktsionaalsust allveelaevaklassist ilma koodi kopeerimata.

Teine viis mitme pärimise selgitamiseks on öelda, et see võimaldab rohkem kui ühel klassil toimida teiste klasside alusena. Mitme pärimise kasutamisel on eeliseid, selle asemel, et koodi ühest või mitmest klassist teise kopeerida. Programmide vigade avastamine võtab sageli aega, kuid kui need avastatakse, tuleb need võimalikult kiiresti parandada. Kui vigu sisaldav kood kopeeritakse mitmesse klassi, peavad programmeerijad rakendama sama paranduse igale koodikoopiale. Kui kasutatakse mitut pärandit, peaks ta töötama ainult selle algklassi koodiga, millest kõik alamklassid pärivad funktsionaalsuse.

Mitte kõik programmeerimiskeeled ei toeta mitut pärimist, isegi kui need toetavad objektorientatsiooni. Võib väita, et mõne keele mõned versioonid toetavad seda, kuigi tegelikult toetavad need pärimist ainult kahest klassist. Klasse, millest teised klassid pärivad funktsionaalsust, nimetatakse sageli “emaklassideks” või “üliklassideks” ja klasse, mis pärivad, nimetatakse “lapsklassideks” või “alamklassideks”. Programmeerijatel, kes on huvitatud sellisest klassidega töötamisest, on tungivalt soovitatav omandada põhjalikud teadmised klasside põhitõdedest, enne kui nad üritavad kasutada mitmekordse pärimise võimalust, sest emaklassi vead või halvad kodeerimistavad antakse edasi. lasteklassi.