這篇文章主要為大家展示了“php面向?qū)ο笾傅氖鞘裁匆馑肌?,?nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“php面向?qū)ο笾傅氖鞘裁匆馑肌边@篇文章吧。
創(chuàng)新互聯(lián)基于分布式IDC數(shù)據(jù)中心構(gòu)建的平臺為眾多戶提供IDC機(jī)房托管 四川大帶寬租用 成都機(jī)柜租用 成都服務(wù)器租用。
在php中,面向?qū)ο缶褪菍⒁幚淼膯栴}抽象為對象,然后通過對象的屬性和行為來解決對象的實(shí)際問題。面向?qū)ο笥袃蓚€重要的基本概念:類和對象,類是對象的抽象,在類中可以定義對象的屬性和方法;對象是類的實(shí)例,類只有被實(shí)例化后才能使用。
本教程操作環(huán)境:windows7系統(tǒng)、PHP7.1版,DELL G3電腦
面向?qū)ο缶褪菍⒁幚淼膯栴}抽象為對象,然后通過對象的屬性和行為來解決對象的實(shí)際問題。我們通常所說的面向?qū)ο鬁?zhǔn)確的說應(yīng)該叫面向?qū)ο缶幊蹋∣OP),它是面向?qū)ο蟮囊徊糠帧?/p>
面向?qū)ο笾饕譃槿齻€部分,如下所示:
面向?qū)ο蠓治觯∣bject Oriented Analysis,OOA);
面向?qū)ο笤O(shè)計(Object Oriented Design,OOD);
面向?qū)ο缶幊蹋∣bject Oriented Programming,OOP)。
面向?qū)ο笾袃蓚€重要的基本概念就是類和對象:
1) 類
世間萬物都具有其自身的屬性和方法,通過這些屬性和方法可以將不同事物區(qū)分開來。例如,人具有身高、體重和膚色等屬性,還可以進(jìn)行吃飯、學(xué)習(xí)、走路等活動,這些活動可以說是人具有的功能??梢园讶丝醋鞒绦蛑械囊粋€類,那么人的身高可以看作類中的屬性,走路可以看作類中的方法。
也就是說,類是屬性和方法的集合,是面向?qū)ο缶幊谭绞降暮诵暮突A(chǔ),通過類可以將零散的用于實(shí)現(xiàn)某項功能的代碼進(jìn)行有效管理。例如,創(chuàng)建一個運(yùn)動類,其中包括 5 個屬性;姓名、身高、體重、年齡和性別,定義 4 個方法:踢足球、打籃球、舉重和跳高。
總而言之,類是變量(類的屬性)與作用于這些變量的函數(shù)(類的方法)的集合,屬性與方法是構(gòu)成類的基礎(chǔ)。
2) 對象
類是具備某項功能的抽象模型,實(shí)際應(yīng)用中還需要對類進(jìn)行實(shí)例化,這樣就引入了對象的概念。
對象是類進(jìn)行實(shí)例化后的產(chǎn)物,是一個實(shí)體。仍然以人為例,“黃種人是人”這句話沒有錯誤,但反過來說“人是黃種人”,這句話一定是錯誤的。因為除了黃種人,還有黑人、白人等。那么“黃種人”就是“人”這個類的一個實(shí)例對象。
可以這樣理解對象和類的關(guān)系:類是對象的抽象,在類中可以定義對象的屬性和方法;對象是類的實(shí)例,類只有被實(shí)例化后才能使用。
面向?qū)ο缶幊痰奶匦?/strong>
面向?qū)ο缶幊叹哂蟹庋b、繼承、多態(tài)三大特性,它們迎合了編程中注重代碼重用性、靈活性和可擴(kuò)展性的需要,奠定了面向?qū)ο笤诰幊讨械牡匚弧?/p>
1) 封裝
封裝就是將一個類的使用和實(shí)現(xiàn)分開,只保留有限的接口(方法)與外部聯(lián)系。對于用到該類的開發(fā)人員,只要知道這個類該如何使用即可,而不用去關(guān)心這個類是如何實(shí)現(xiàn)的。這樣做可以讓開發(fā)人員更好地把精力集中起來專注于別的事情,同時也避免了程序之間的相互依賴而帶來的不便。
例如,在使用計算機(jī)時,我們并不需要將計算機(jī)拆開了解它每個部件的具體用處,只需要按下電源鍵就能將計算機(jī)啟動,這就體現(xiàn)了封裝的好處。
2) 繼承
繼承就是派生類(子類)自動繼承一個或多個基類(父類)中的屬性與方法,并可以重寫或添加新的屬性或方法。繼承這個特性簡化了對象和類的創(chuàng)建,增加了代碼的重用性。
例如,已經(jīng)定義了 A 類,接下來準(zhǔn)備定義 B 類,而 B 類中有很多屬性和方法與 A 類相同,那么就可以用 B 類繼承 A 類,這樣就不用再在 B 類中定義 A 類中已有的屬性和方法,從而可以在很大程度上提高程序的開發(fā)效率。
繼承分為單繼承和多繼承,PHP 目前只支持單繼承,也就是說一個子類有且只有一個父類。
3) 多態(tài)
對象的狀態(tài)是多變的。一個對象相對于同一個類的另一個對象來說,它們擁有的屬性和方法雖然相同,但卻可以有著不同的狀態(tài)。另外,一個類可以派生出若干個子類,這些子類在保留了父對象的某些屬性和方法的同時,也可以定義一些新的方法和屬性,甚至于完全改寫父類中的某些已有的方法。多態(tài)增強(qiáng)了軟件的靈活性和重用性。
以上是“php面向?qū)ο笾傅氖鞘裁匆馑肌边@篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!