Sisu
Peamine erinevus
Üksikpärand määratletakse tuletatud klassina, mida kasutatakse omaduste ja nende olemuse pärimiseks üksikvanemaklassilt, millel on kõik programmi käitamiseks vajalikud omadused. Mitu pärandit määratletakse tüübina, mida kasutavad peamised objektorienteeritud arvutiprogrammeerimiskeeled, kus põhiobjektis või klassis olevad omadused saab edastada uuele objektile või klassile.
Võrdlusdiagramm
Alus | Üksik pärand | Mitu pärandit |
Definitsioon | Tuletatud klass, mida kasutatakse üksikvanemaklassi omaduste ja nende olemuse pärimiseks, millel on kõik programmi käitamiseks vajalikud omadused. | Tüüp, mida kasutavad peamised objektorienteeritud arvutiprogrammeerimiskeeled, kus põhiobjektis või klassis olevad omadused saab edastada uude objekti või klassi. |
Alus | Tuletatud klass saab ühtse baasi. | Tuletatud klass saab kaks või enam kui kaks põhiklassi. |
Juurdepääs | Tuletatud klass pääseb alati juurde nende failide funktsioonidele, millega nad on seotud. | Tuletatud klass saab juurdepääsu kõigile ühendatud põhiklasside funktsioonidele. |
Loodus | Avalikud, era- ja kaitstud võrgud. | Avalikud, era- ja kaitstud võrgud. |
Käitumine | Käitumine jääb samaks kui vanemal. | Käitumine muutub mõlema vanema seguks. |
Üksik pärand
Üksikpärand määratletakse tuletatud klassina, mida kasutatakse omaduste ja nende olemuse pärimiseks üksikvanemaklassilt, millel on kõik programmi käitamiseks vajalikud omadused. See aitab tuletatud klassi omaduste pärimisel ja põhiklassi olemusel ning avab seejärel koodi korduvkasutatavuse ja lisab olemasolevale süsteemile uusi funktsioone. Üksikpärand annab järeldatavale klassile õiguse omandada omadused ja käitumine eraldiseisvast vanemklassist. See võimaldab tasemel mõista põhiklassi omaduste ja käitumise ostmist, võimaldades seejärel koodi korduvkasutatavust ja täiendavalt uute komponentide lisamist praegusesse süsteemi. See muudab süsteemi märkimisväärselt produktiivsemaks ja vähem ülearuseks. Pärimine on protesti korraldatud programmeerimise (OOP) üks põhielemente. Üksikpärand on paljudest päranditest turvalisem, kui seda õigesti lähemale tõmmata. Lisaks sellele annab see kindlale klassile õiguse kutsuda teatud strateegia jaoks vanemklassi kasutamine, kui see tehnika järeldatud klassis või põhiklassi konstruktoris tühistatakse. Kui klass võimendab täpselt sel hetkel teist taset, nimetame seda üksildaseks pärandiks. Allpool olev vooskeem näitab, et B-klass laiendab ainult ühte tüüpi, mis on A. Siin A saab B-klassi vanemklassiks ja B oleks A-tüüpi tüpiklass. Pärimise ideed kasutatakse paljude programmeerimismurrete osana, sealhulgas C ++, Java, PHP, C # ja Visual Basic. Java ja C # võimaldavad üksikut pärandit, samas kui erinevad murded, näiteks C ++, toetavad paljusid pärandusi.
Mitu pärandit
Mitu pärandit määratletakse klassina, mida kasutavad primaarsed objektorienteeritud arvutiprogrammeerimiskeeled, kus põhiobjektis või klassis olevad omadused saab edastada uuele objektile või klassile ja pärandiprotsess lõppeb uute funktsioonide lisamisega. Mitu pärimist on osa protestides paiknevatest arvutiprogrammide murrete osadest, milles küsimus või klass saab omandada atribuute ja elemente rohkem kui ühest vanema protesti või vanema klassist. See on üheselt pärandatud, kus protestijate klass võib lihtsalt saada ühe konkreetse küsimuse või klassi kohta. Mõne protesti korraldatud programmeerimismurde dialekti erinev pärandielement, kus klass või subjekt saab atribuute ja omadusi rohkem kui ühest vanemklassist või protestist. See on vastuolus ühe pärandvaraga, mis võimaldab meeleavaldusel või klassil omandada ühe konkreetse küsimuse või klassi. Ehkki mitmekordse pärimisega on teatud eeliseid, suurendab see ebakindlust ja mitmetahulisust, kui seda ei ole õigesti kirjeldatud ega teostatud. Täitmise erinev pärand on võime omandada tehnikamääratlusi erinevatest klassidest. Sellise arvuka pärandi puhul kerkib esile probleeme, näiteks nimekokkuvõtted ja kahemõttelisus. Samuti saab tarkvarainsener tahtmatult nimevõitlust esitada, lisades suveklassile veel ühe tehnika. Vaikestrateegiad näitavad ühte tüüpi erinevat kasutuspärandit. Klass saab aktiveerida rohkem kui ühe liidese, mis võib sisaldada sarnase nimega vaikepõhimõtteid. Java kompilaator annab mõned põhimõtted, et selgitada välja, millises vaikesüsteemis konkreetne klass töötab.
Peamised erinevused
- Üksikpärand määratletakse tuletatud klassina, mida kasutatakse omaduste ja nende olemuse pärimiseks üksikvanemaklassilt, millel on kõik programmi käitamiseks vajalikud omadused. Mitu pärandit määratletakse tüübina, mida kasutavad peamised objektorienteeritud arvutiprogrammeerimiskeeled, kus põhiobjektis või klassis olevad omadused saab edastada uuele objektile või klassile.
- Tuletatud klass saab ühe pärandi põhiklassi. Teisest küljest saab tuletatud klass kaks või enam kui kaks põhiklassi.
- Üksiku pärandi tuletatud klass pääseb alati juurde faili funktsioonidele, millega nad on seotud. Teisest küljest saab tuletatud klass mitme pärimise jaoks juurdepääsu kõigile ühendatud baasklasside omadustele.
- Nii üksikul kui ka mitmel pärandil on sama nähtavustegur ja seetõttu on neil nii avalikud, era- kui ka kaitstud võrgud.
- Ühe pärimisprotsessi käitamisaeg nõuab vähe aega, et täita erinevad ülesanded üle pea. Teisest küljest nõuab mitme pärimisprotsessi käitamisaeg erinevate protsesside lõpetamiseks rohkem aega.
- Üksiku pärandi puhul käitutakse samamoodi kui vanemal. Korduva pärimise käitumine muutub mõlema vanema seguks.