Yuav ua li cas cov cuab yeej cuab tam virtual daws qhov teeb meem pob zeb diamond?
Yuav ua li cas cov cuab yeej cuab tam virtual daws qhov teeb meem pob zeb diamond?

Video: Yuav ua li cas cov cuab yeej cuab tam virtual daws qhov teeb meem pob zeb diamond?

Video: Yuav ua li cas cov cuab yeej cuab tam virtual daws qhov teeb meem pob zeb diamond?
Video: Tswv Yexus lub neej thaum pib txug thaum xaus 2024, Hlis ntuj nqeg
Anonim

Virtual qub txeeg qub teg daws teeb meem classic Teeb meem pob zeb diamond ”. Nws ua kom ntseeg tau tias cov chav kawm me nyuam tsuas tau txais ib qho piv txwv ntawm cov chav hauv paus. Lwm lo lus, Snake class yuav tsuas muaj ib qho piv txwv ntawm chav kawm LivingThing. Cov chav kawm Tsiaj thiab Cov tsiaj reptile qhia qhov xwm txheej no.

Hauv qhov no, dab tsi yog qhov teeb meem pob zeb diamond hauv qub txeeg qub teg?

Qhov teeb meem pob zeb diamond ” yog qhov tsis meej pem uas tuaj yeem tshwm sim los ntawm kev tso cai ntau yam qub txeeg qub teg . Nws yog ib qho mob hnyav teeb meem rau hom lus (xws li C ++) uas tso cai rau ntau yam qub txeeg qub teg ntawm xeev. InJava, txawm li cas los xij, ntau yam qub txeeg qub teg tsis tso cai rau cov chav kawm, tsuas yog rau cov interfaces, thiab cov no tsis muaj.

Tom qab ntawd, lo lus nug yog, yuav ua li cas cov chav kawm virtual pab hauv kev qub txeeg qub teg? Cov chav kawm virtual muab txoj hauv kev kom txuag tau qhov chaw thiab zam qhov tsis meej pem hauv chav kawm hierarchies uas siv multipleinheritances. Thaum a chav kawm hauv paus yog teev raws li a virtualbase , nws tuaj yeem ua raws li kev tsis ncaj ncees puag ntau tshaj ib zaug yam tsis muaj duplicate ntawm nws cov tswv cuab cov ntaub ntawv.

Kuj paub, dab tsi yog virtual pej xeem qub txeeg qub teg?

Virtual qub txeeg qub teg yog C ++ cov txheej txheem uas tsuas yog ib daim qauv ntawm cov hauv paus chav kawm cov tswv cuab sib txawv yog tau qub txeeg qub teg los ntawm cov tub xeeb ntxwv muab cov chav kawm. Qhov no feature ismost pab tau rau ntau yam qub txeeg qub teg , raws li nws ua rau virtual lub hauv paus ib yam khoom siv rau cov chav kawm deriving thiab txhua chav kawm uas tau muab los ntawm nws.

Interface daws teeb meem pob zeb diamond li cas?

Ua li cas siv ib interface hauv Java daws tus teeb meem pob zeb diamond ? Li no, yog tias ob interfaces muaj tib txoj kev kos npe thiab ib chav kawm xav tau txais txiaj ntsig (kev siv hauv Java) los ntawm ob qho no interfaces , tsis muaj "txoj kev lub cev" los ua qub txeeg qub teg, li no " pob zeb diamond qub txeeg qub teg" qhov teeb meem yog zam.

Pom zoo: