Kev Tshaj Tawm vs Kev Tshaj Tawm
Txoj kev Overriding thiab txoj kev Overloading yog ob lub ntsiab lus / cov txuj ci / cov yam ntxwv pom hauv qee hom lus programming. Ob lub ntsiab lus tso cai rau tus programmer muab cov kev siv sib txawv rau cov txheej txheem nrog tib lub npe. Txoj kev overriding tso cai rau tus programmer muab lwm txoj kev siv nyob rau hauv ib chav kawm sub rau ib txoj kev uas twb tau teev tseg hauv nws chav kawm super. Txoj kev overloading tso cai rau tus programmer muab kev siv sib txawv rau ntau txoj hauv kev nrog tib lub npe (hauv tib chav kawm).
Dab tsi yog Kev Tshaj Tawm?
Raws li tau hais los saum no, ib chav kawm tuaj yeem txuas ntxiv rau chav kawm super lossis chav kawm niam txiv, hauv hom lus hais txog kev ua haujlwm. Ib chav kawm me me tuaj yeem muaj nws tus kheej txoj hauv kev lossis tuaj yeem xaiv tau nws tus kheej siv rau cov txheej txheem uas twb tau teev tseg hauv nws chav niam txiv (los yog ib qho ntawm nws cov chav kawm niam txiv loj). Yog li thaum kawg tshwm sim, nws yog hu ua method overriding. Nyob rau hauv lwm yam lus, yog hais tias tus me nyuam chav kawm muab ib qho kev siv rau ib txoj kev nrog tib yam kos npe thiab xa rov qab hom raws li ib tug txoj kev twb tau teev nyob rau hauv ib tug ntawm nws cov niam txiv cov chav kawm, txoj kev no yog hais tias yuav overridden (hloov) los ntawm qhov kev siv ntawm cov me nyuam chav kawm ntawv.. Yog li, yog tias muaj txoj hauv kev dhau los hauv chav kawm, lub sijhawm ua haujlwm yuav tsum tau txiav txim siab siv txoj kev twg. Qhov teeb meem no tau daws los ntawm kev saib yam khoom tiag tiag uas yog siv los hu nws. Yog hais tias ib yam khoom ntawm cov niam txiv chav kawm yog siv los hu rau txoj kev overridden, ces qhov kev siv hauv chav kawm niam txiv yog siv. Ib yam li ntawd, yog hais tias nws yog ib yam khoom ntawm cov me nyuam chav kawm uas siv, ces cov me nyuam cov chav kawm yog siv. Cov lus programming niaj hnub zoo li Java, Eifell, C ++ thiab Python tso cai rau kev hla dhau.
Yuav ua li cas yog overloading?
Txoj kev overloading yog qhov tshwj xeeb muab los ntawm qee cov lus programming los tsim ntau dua ib txoj hauv kev nrog tib lub npe, tab sis muaj ntau hom kev tawm tswv yim thiab cov khoom siv. Hauv cov lus programming niaj hnub zoo li Java, C, C ++ thiab VB. NET, qhov tshwj xeeb no muaj. Koj tuaj yeem tshaj tawm ib txoj hauv kev los ntawm kev tsim lwm txoj hauv kev nrog tib lub npe tab sis nrog rau lwm txoj kev kos npe lossis lwm hom rov qab (los yog ob qho tib si). Piv txwv li, yog tias koj muaj method1 (type1 t1) thiab method1 (type2 t2) nyob rau hauv tib chav kawm, ces lawv yog overloaded. Tom qab ntawd lub kaw lus yuav tau txiav txim siab qhov twg yuav tsum tau ua thaum nws raug hu. Qhov kev sib txawv no yog ua los ntawm kev saib ntawm hom parameter (s) tau dhau mus rau hauv txoj kev. Yog hais tias qhov kev sib cav yog hom 1, ces thawj qhov kev siv yog hu ua, hos yog hais tias nws yog hom 2, ces qhov kev siv thib ob hu ua.
Dab tsi yog qhov txawv ntawm Kev Tshaj Tawm thiab Tshaj Tawm?
Txawm hais tias, txoj kev overriding thiab txoj kev overloading yog siv los muab ib txoj kev nrog rau kev siv sib txawv, muaj qhov sib txawv tseem ceeb ntawm ob lub tswv yim / cov tswv yim. Ua ntej tshaj plaws, cov ntsiab lus ntawm txoj kev overriding ib txwm nyob hauv cov chav kawm sib txawv, thaum cov ntsiab lus ntawm txoj kev overloading nyob hauv tib chav kawm. Qhov ntawd txhais tau hais tias overriding tsuas yog ua tau nyob rau hauv cov khoom taw qhia hom lus uas tso cai rau kev ua qub txeeg qub teg, thaum overloading tuaj yeem muaj nyob hauv hom lus tsis yog hom lus ib yam nkaus. Hauv lwm lo lus, koj override ib txoj hauv kev hauv chav kawm super tab sis koj overload ib txoj hauv koj tus kheej chav kawm.
Lwm qhov sib txawv yog tias cov txheej txheem overridden muaj tib txoj kev npe, kos npe thiab hom xa rov qab, tab sis cov txheej txheem overloaded yuav tsum sib txawv ntawm qhov kos npe lossis hom xa rov qab (lub npe yuav tsum yog tib yam). Yuav kom sib txawv ntawm ob txoj kev overridden, hom khoom tiag tiag uas yog siv los hu rau txoj kev id siv, whereas kom sib txawv ntawm ob txoj kev overloaded hom ntawm cov tsis siv. Lwm qhov sib txawv tseem ceeb yog tias overloading yog daws thaum sau lub sij hawm, thaum overriding yog daws ntawm runtime.