Tofauti Kati ya Kuzidisha na Kupakia

Tofauti Kati ya Kuzidisha na Kupakia
Tofauti Kati ya Kuzidisha na Kupakia

Video: Tofauti Kati ya Kuzidisha na Kupakia

Video: Tofauti Kati ya Kuzidisha na Kupakia
Video: KUNDE / JINSI YA KUPIKA KUNDE ZA SUKARI NA NAZI / RED COWPEAS /WITH ENGLISH SUBTITLES 2024, Novemba
Anonim

Kuzidisha dhidi ya Kupakia kupita kiasi

Njia ya Kubatilisha na Mbinu ya Kupakia kupita kiasi ni dhana/mbinu/kipengele kinachopatikana katika baadhi ya lugha za programu. Dhana zote mbili huruhusu mpangaji programu kutoa utekelezaji tofauti kwa njia zilizo na jina moja. Ubatilishaji wa njia huruhusu mpangaji programu kutoa utekelezaji mbadala ndani ya darasa ndogo kwa njia ambayo tayari imefafanuliwa ndani ya darasa lake bora. Upakiaji wa mbinu kupita kiasi huruhusu mtayarishaji programu kutoa utekelezaji tofauti kwa mbinu nyingi zilizo na jina moja (ndani ya darasa moja).

Kubatilisha ni nini?

Kama ilivyotajwa hapo juu, darasa linaweza kupanua darasa bora au darasa la wazazi, katika lugha za programu zinazolenga kitu. Darasa la mtoto linaweza kuwa na mbinu zake au kwa hiari linaweza kuwa na utekelezwaji wake kwa mbinu ambazo tayari zimefafanuliwa katika darasa la mzazi (au mojawapo ya madarasa yake ya mzazi mkuu). Kwa hivyo ya mwisho inapotokea, inaitwa njia kuu. Kwa maneno mengine, ikiwa darasa la watoto linatoa utekelezaji kwa njia iliyo na saini sawa na aina ya kurudi kama njia iliyofafanuliwa tayari katika moja ya madarasa ya mzazi, njia hiyo inasemekana kubatiliwa (kubadilishwa) na utekelezaji wa darasa la watoto.. Kwa hivyo, ikiwa kuna njia iliyobatilishwa katika darasa, mfumo wa wakati wa kukimbia utalazimika kuamua ni njia gani ya utekelezaji itatumika. Suala hili linatatuliwa kwa kuangalia aina halisi ya kitu ambacho kinatumika kukiomba. Ikiwa kitu cha darasa la mzazi kinatumika kuomba njia iliyobatilishwa, basi utekelezaji katika darasa la mzazi hutumiwa. Vile vile, ikiwa ni kitu cha darasa la watoto kinachotumiwa, basi utekelezaji wa darasa la watoto hutumiwa. Lugha za kisasa za upangaji kama Java, Eifell, C++ na Python huruhusu njia ya kubatilisha.

Kupakia kupita kiasi ni nini?

Njia ya kupakia kupita kiasi ni kipengele kinachotolewa na baadhi ya lugha za programu ili kuunda zaidi ya mbinu moja kwa jina moja, lakini kwa aina tofauti za ingizo na towe. Katika lugha za kisasa za programu kama vile Java, C, C++ na VB. NET, kipengele hiki kinapatikana. Unaweza kupakia njia kupita kiasi kwa kuunda njia nyingine iliyo na jina sawa lakini kwa saini ya njia tofauti au aina tofauti ya kurejesha (au zote mbili). Kwa mfano, ikiwa unayo method1(type1 t1) na method1(type2 t2) ndani ya darasa moja, basi zimejaa kupita kiasi. Kisha mfumo utalazimika kuamua ni ipi ya kunyongwa inapoitwa. Utofautishaji huu unafanywa kwa kuangalia aina ya (vigezo) vilivyopitishwa kwa njia. Ikiwa hoja ni ya aina1, basi utekelezaji wa kwanza unaitwa, wakati ikiwa ni wa aina2, basi utekelezaji wa pili unaitwa.

Kuna tofauti gani kati ya Kupindua na Kupakia Zaidi?

Ingawa, kubatilisha mbinu na upakiaji wa mbinu zaidi hutumika kutoa mbinu yenye utekelezaji tofauti, kuna tofauti kuu kati ya dhana/mbinu hizi mbili. Kwanza kabisa, masomo ya upitishaji wa mbinu daima hukaa ndani ya madarasa tofauti, wakati masomo ya upakiaji wa njia hukaa ndani ya darasa moja. Hiyo inamaanisha kubatilisha kunawezekana tu katika lugha za programu zinazolenga kitu ambazo huruhusu urithi, ilhali upakiaji kupita kiasi unaweza kupatikana katika lugha isiyolenga kitu pia. Kwa maneno mengine, unabatilisha mbinu katika darasa la juu lakini unapakia mbinu nyingi ndani ya darasa lako mwenyewe.

Tofauti nyingine ni kwamba mbinu zilizobatilishwa zina jina la mbinu sawa, sahihi ya mbinu na aina ya kurejesha, lakini mbinu zilizojaa kupita kiasi lazima zitofautiane katika saini au aina ya kurejesha (jina linapaswa kuwa sawa). Ili kutofautisha kati ya mbinu mbili zilizobatilishwa, aina halisi ya kitu kinachotumiwa kuomba kitambulisho cha mbinu kilichotumiwa, ambapo kutofautisha kati ya mbinu mbili zilizojaa aina za vigezo hutumika. Tofauti nyingine muhimu ni kwamba upakiaji kupita kiasi hutatuliwa kwa wakati wa kukusanya, wakati uondoaji unatatuliwa wakati wa utekelezaji.

Ilipendekeza: