面向?qū)ο蟪绦蛟O(shè)計-php教學(xué)課件10

面向?qū)ο蟪绦蛟O(shè)計-php教學(xué)課件10

ID:33584067

大?。?25.53 KB

頁數(shù):33頁

時間:2019-02-27

面向?qū)ο蟪绦蛟O(shè)計-php教學(xué)課件10_第1頁
面向?qū)ο蟪绦蛟O(shè)計-php教學(xué)課件10_第2頁
面向?qū)ο蟪绦蛟O(shè)計-php教學(xué)課件10_第3頁
面向?qū)ο蟪绦蛟O(shè)計-php教學(xué)課件10_第4頁
面向?qū)ο蟪绦蛟O(shè)計-php教學(xué)課件10_第5頁
資源描述:

《面向?qū)ο蟪绦蛟O(shè)計-php教學(xué)課件10》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、PHP+MySQL動態(tài)網(wǎng)頁技術(shù)教程主編:王彥輝10.1項目導(dǎo)引:圖書顯示模塊v過程化的編程v面向?qū)ο蟮某绦蛟O(shè)計(OOP)v基于面向?qū)ο蟮膱D書顯示模塊又該如何開發(fā)呢?10.2項目分析v面向?qū)ο蟮某绦蛟O(shè)計(OOP)是一種編程思想,它力圖使計算機語言中對事物的描述與現(xiàn)實世界中該事務(wù)的本來面目盡可能的一致,使代碼具有“物”的意義。v例如,我們要“自駕出游”,需要人開著車行駛,至于沿什么路線走我們不關(guān)心,只要求到達目的地。這里涉及到“人”和“車”兩個實物。人具有“姓名”、“性別”等特征和“開車”等行為。汽車具有“車牌號”、“顏色”等特征和“行駛”等行為。上述問題反映到軟件

2、系統(tǒng)中,就是我們要講的面向?qū)ο?,現(xiàn)實中所提到的“車”和“人”,將會在面向?qū)ο笾斜怀橄蟪深悾哂芯唧w特征和行為的“車”和“人”視為對象,“車”和“人”的特征和行為視為對象的屬性和方法。10.2項目分析v面向?qū)ο蟮乃枷雭碓从谌藗儗ΜF(xiàn)實世界的認知,符合人們討論事物的探究“是什么,做什么,怎么做”的一般規(guī)律。面向?qū)ο缶褪菍⒁幚淼膯栴}抽象為對象,然后通過對象的屬性和行為來解決對象的實際問題。v在圖書顯示開發(fā)模塊中,我們把“數(shù)據(jù)庫”抽象為類,具體的圖書商城數(shù)據(jù)庫視為對象,連接數(shù)據(jù)庫需要主機名、賬戶、密碼、數(shù)據(jù)庫名等特征,這些特征視為數(shù)據(jù)庫對象的屬性,數(shù)據(jù)庫的添加、修改、刪

3、除和查詢等行為視為數(shù)據(jù)庫對象的方法。10.3技術(shù)準(zhǔn)備v10.3.1面向?qū)ο蟮幕靖拍頽1.什么是類n屬性、方法n2.什么是對象n3.類和對象的關(guān)系10.3技術(shù)準(zhǔn)備v10.3.2類的聲明n1.類的定義n和很多面向?qū)ο笳Z言一樣,在PHP中也是通過class關(guān)鍵字來定義類的。語法格式如下:n權(quán)限修飾符class類名{n類體;n}n權(quán)限修飾符是可選項,值可以為public、protected和private,也可以省略不寫;nclass是創(chuàng)建類的關(guān)鍵字;n類名可以是任意數(shù)字和字母的組合,但是不能以數(shù)字開頭;n類體必須放在兩個大括號之間。10.3技術(shù)準(zhǔn)備v10.3.2類的

4、聲明n2.成員屬性n類中可以定義稱之為屬性的特定變量,用來存儲對象不同的屬性信息。n要求必須使用public、private和protected三個限定詞之一來修飾n3.成員方法n在類中聲明的函數(shù)稱之為成員方法。成員屬性可以讓對象存儲數(shù)據(jù),成員方法則可以讓對象執(zhí)行任務(wù)n例10-110.3技術(shù)準(zhǔn)備v10.3.3類的實例化n1.創(chuàng)建對象n面向?qū)ο蟪绦虻淖罱K操作者是對象,而對象是類實例化的產(chǎn)物。定義好一個類之后,就可以使用new關(guān)鍵字來創(chuàng)建一個基于該類的對象,類的實例化的格式如下。n$變量名=new類名稱()n$變量名:類實例化返回的對象名;nnew:關(guān)鍵字,表明要創(chuàng)

5、建一個新的對象。n例10-210.3技術(shù)準(zhǔn)備v2.訪問類中的成員n類中包括成員屬性和成員方法,實例化的對象中就會包含這些屬性和方法。當(dāng)我們需要訪問這些屬性時,用“->”運算符來引用他們。n例10-3v3.“$this”關(guān)鍵字n我們使用“變量對象名->…”在對象的外部調(diào)用它的某些屬性和方法。那么,當(dāng)一個類還沒有實例化的時候,如何訪問成員屬性和方法呢?即在類的內(nèi)部如何訪問自身成員屬性和方法?我們使用一個特殊的對象引用方法“$this”關(guān)鍵字。n例10-410.3技術(shù)準(zhǔn)備v4.構(gòu)造方法和析構(gòu)方法n構(gòu)造方法是在使用new關(guān)鍵字創(chuàng)建對象時自動調(diào)用的方法,通常用于完成類的初

6、始化工作。在PHP5中使用“__construct()”來聲明構(gòu)造方法(__是兩個下劃線),語法格式如下:nfunction?__construct([mixed?args[,…]]){?n}?n在PHP中,一個類只能聲明一個構(gòu)造方法,構(gòu)造方法可以有參數(shù)。n析構(gòu)方法的作用和構(gòu)造方法正好相反,是對象被銷毀之前最后一個被對象自動調(diào)用的方法,用于實現(xiàn)在銷毀一個對象之前執(zhí)行一些特定的操作,諸如關(guān)閉文件和釋放內(nèi)存等。析構(gòu)方法使用“__destruct()”聲明n例10-510.3技術(shù)準(zhǔn)備v10.3.4類的繼承性n繼承是類的強大功能,是面向?qū)ο蟮某绦蛟O(shè)計的特點之一,它使一個

7、類繼承并擁有另一個已存在類的成員屬性和成員方法,其中被繼承的類稱為父類,繼承的類稱為子類。通過繼承能夠提高代碼的重用性和可維護性。n類的繼承是類與類之間的一種關(guān)系的體現(xiàn)。子類從父類繼承了所有的屬性和方法(私有屬性和方法不能被繼承),在子類中也可以添加自己的屬性和方法,從而擴充子類的功能,子類繼承父類的屬性和方法不能被注銷,也不能減少,但是可以用新的值來覆蓋他們。10.3技術(shù)準(zhǔn)備v10.3.4類的繼承性n1.extends關(guān)鍵字n一個子類可以從一個父類中繼承屬性和方法,這叫做單繼承;也可以從多個父類中同時繼承屬性和方法,這叫做多繼承。PHP5不支持多繼承,在PHP

8、中使用extends關(guān)鍵

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。