
Video: Pärilikkuse Ja Koosseisu Erinevus

2023 Autor: Mildred Bawerman | [email protected]. Viimati modifitseeritud: 2023-07-30 19:49
Pärand vs koostis
Pärimine ja koosseis on kaks olulist mõistet, mis on leitud OOP-st (Object Oriented Programming). Lihtsamalt öeldes tegelevad nii koostis kui ka pärimine klassile täiendavate omaduste või käitumise pakkumisega. Pärimine on klassi võime pärida vanematelt klassilt omadusi ja käitumist, laiendades seda. Teisalt on Kompositsioon klassi võime sisaldada liikmeandmetena eri klasside objekte.
Mis on pärimine?
Nagu ülalpool mainitud, on pärimine klassi võime pärida vanemklassi omadusi ja käitumist, laiendades seda. Pärand annab sisuliselt koodi taaskasutuse, võimaldades olemasoleva klassi omadusi ja käitumist laiendada äsja määratletud klassi võrra. Kui A-klass ulatub B-ni, nimetatakse B-klassi vanemklassiks (või superklassiks) ja A-klassi lasteklassiks (või tuletatud klassiks / alamklassiks). Selle stsenaariumi korral pärib klass A kõik superklassi (B) avalikud ja kaitstud atribuudid ja meetodid. Alamklass võib valikuliselt alistada (pakkuda meetoditele uue või laiendatud funktsionaalsuse) vanemklassilt päritud käitumise.
Pärimine tähistab OOP-s suhet. See tähendab sisuliselt seda, et A on ka B. Teisisõnu, B võib olla klass, millel on üldine kirjeldus reaalsest maailmast, kuid A täpsustab teatud spetsialiseerumist. Reaalses maailmas programmeerimisprobleemi korral võiks klassi Person laiendada, et luua töötaja klass. Seda nimetatakse spetsialiseerumiseks. Kuid võiksite kõigepealt luua ka klassi Töötaja ja seejärel üldistada seda ka klassile Isik (st üldistamine). Selles näites on töötajal kõik inimese omadused ja käitumine (st töötaja on ka isik) ja see võib sisaldada ka mõnda täiendavat funktsionaalsust (nii et inimene ei ole töötaja).
Mis on koostis?
Kompositsioon on klassi võime sisaldada liikmeandmetena eri klasside objekte. Näiteks võib klass A sisaldada liikmena B-klassi objekti. Siin saab kõiki B-s määratletud avalikke meetodeid (või funktsioone) täita klassis A. A-klass saab konteineriks, B-klass aga suletud klassiks. Kompositsiooni nimetatakse ka konteinerlaevaks. Selles näites võib öelda, et klass A koosneb klassist B. OOP-s tähistab Composition "on-a" suhet. Oluline on märkida, et kuigi konteineril on juurdepääs kõigi suletud klassi avalike meetodite käivitamiseks, ei ole see võimeline muutma ega pakkuma täiendavaid funktsioone. Kui tegemist on reaalse maailma programmeerimisprobleemiga, võib klassi TextBox objekt sisalduda klassivormis,ja seega võib öelda, et vorm sisaldab tekstikasti (või alternatiivina koosneb vorm tekstikastist).
Mis vahe on pärimisel ja koosseisul?
Kuigi pärimine ja koosseis on kaks OOP-mõistet, on need üsna erinevad selle poolest, mida nad lubavad programmeerijal saavutada. Pärimine on klassi võime pärida vanemklassi omadusi ja käitumist, laiendades seda, Kompositsioon aga klassi võime sisaldada liikmeandmetena eri klasside objekte. Kui klassi laiendatakse, pärib see kõik avalikud ja kaitstud omadused / käitumise ning alamklass võib need käitumised alistada. Kuid kui klass sisaldub teises, ei saa konteiner võimalust muuta või lisada käitumisele kaasatud. Pärimine tähistab OOP-s suhet "is-a", samas kui "Composition" esindab suhet "on-a".
Soovitatav:
Erinevus Tsütoplasma Pärilikkuse Ja Tuumapärandi Vahel

Peamine erinevus tsütoplasma pärilikkuse ja tuuma pärimise vahel on see, et tsütoplasma pärilikkus toimub tsütoplasma või
Pärilikkuse Ja Pärilikkuse Erinevus

Pärilikkus vs pärilik Kui näeme poega, kes näeb välja ja käitub peaaegu nagu tema isa või õed-vennad, sarnanevad välimusega, kipume ütlema, et see on siin
Polümorfismi Ja Pärilikkuse Erinevus

Polümorfism vs pärilikkus Kui kaks terminit polümorfism ja pärimine on Interneti-otsingumootoris kokku löödud, oleksid kõik tagastatud tulemused
Pärilikkuse Ja Java-liidese Erinevus

Peamine erinevus - pärilikkus vs liides Java-s on Java programmeerimiskeel, mille on välja töötanud Sun Microsystems. Java abil saab arendada erinevaid rakendusi
Erinevus Tsütoplasma Pärilikkuse Ja Geneetilise Ema Mõju Vahel

Põhierinevus - tsütoplasma pärilikkus vs ema geneetiline mõju Kromosomaalne DNA on rakus peamine geneetilise teabe hoidla. See on instru