封裝:封裝就是把對(duì)象的屬性和行為結(jié)合成一個(gè)獨(dú)立的整體,把內(nèi)部的實(shí)現(xiàn)細(xì)節(jié)隱藏起來(lái),不能被外界所看見(jiàn),調(diào)用的人只能執(zhí)行,而看不到實(shí)現(xiàn)的細(xì)節(jié),保證了代碼的安全性
繼承:從已有類(lèi)中派生出新的實(shí)例對(duì)象,子類(lèi)繼承父類(lèi)的屬性和方法,并且自己可以拓展出自己獨(dú)有的屬性和方法。保證了代碼的復(fù)用率。python支持單繼承和多繼承。
多態(tài):首先Python不支持多態(tài),也不用支持多態(tài),python是一種多態(tài)語(yǔ)言,崇尚鴨子類(lèi)型。在鴨子類(lèi)型中,關(guān)注的不是對(duì)象的類(lèi)型本身,而是它是如何使用的。
例如,在不使用鴨子類(lèi)型的語(yǔ)言中,我們可以編寫(xiě)一個(gè)函數(shù),它接受一個(gè)類(lèi)型為鴨的對(duì)象,并調(diào)用它的走和叫方法。
在使用鴨子類(lèi)型的語(yǔ)言中,這樣的一個(gè)函數(shù)可以接受一個(gè)任意類(lèi)型的對(duì)象,并調(diào)用它的走和叫方法。如果這些需要被調(diào)用的方法不存在,那么將引發(fā)一個(gè)運(yùn)行時(shí)錯(cuò)誤。任何擁有這樣的正確的走和叫方法的對(duì)象都可被函數(shù)接受的這種行為引出了以上表述,這種決定類(lèi)型的方式因此得名。