前段時(shí)間有一個(gè)朋友和我吐槽,說自己剛學(xué)完python基礎(chǔ)和web框架,還沒有實(shí)戰(zhàn)就去碰碰運(yùn)氣面試,結(jié)果無功而返,我問他為什么,他就說人家面試的時(shí)候問了幾個(gè)問題,他沒有答上來,結(jié)果筆試都沒進(jìn),其實(shí)問的最多的就是python的面向?qū)ο螅裉?a href="http://virtualnatuurmuseumfryslan.com" target="_blank">深圳網(wǎng)站建設(shè)工作室就來和大家談?wù)?span>python的面向?qū)ο蟆?
其實(shí)要是我一個(gè)面試官,可能我也會(huì)問python的面向?qū)ο?,因?yàn)?span>python是一個(gè)純面向?qū)ο蟮恼Z言,可見其重要性。
說白了,python的面向?qū)ο缶褪且环N編程的思想,是對python函數(shù)的封裝,讓其更加具有可讀性,讓開發(fā)“更快更好更強(qiáng)...”
python面向?qū)ο笠灿袔状筇匦裕?
1、多態(tài)(polymorphism):一個(gè)函數(shù)有多種表現(xiàn)形式,調(diào)用一個(gè)方法有多種形式,但是表現(xiàn)出的方法是不一樣的。
2、繼承(inheritance)子項(xiàng)繼承父項(xiàng)的某些功能,在程序中表現(xiàn)某種聯(lián)系,可以讓某個(gè)類型的對象獲得另一個(gè)類型的對象的屬性的方法。它支持按級分類的概念。
3、封裝(encapsulation)也就是把客觀事物封裝成抽象的類,并且類可以把自己的數(shù)據(jù)和方法只讓可信的類或者對象操作,對不可信的進(jìn)行信息隱藏。
函數(shù)式編程和面向?qū)ο缶幊逃惺裁磪^(qū)別:
相同點(diǎn):都是把程序進(jìn)行封裝、方便重復(fù)利用,提高效率。
不同點(diǎn):函數(shù)重點(diǎn)是用于整體調(diào)用,一般用于一段不可更改的程序。僅僅是解決代碼重用性的問題。
而面向?qū)ο蟪鰜泶a重用性。還包括繼承、多態(tài)等。使用上更加靈活。
看了上面關(guān)于python面向?qū)ο蟮幕A(chǔ),不知道大家對于python的面向?qū)ο笥袥]有了解,深圳網(wǎng)站建設(shè)工作室也希望大家可以深刻理解面向?qū)ο缶幊?,不論是哪一門語言,面向?qū)ο蠖际呛苤匾摹?