php面向?qū)ο蟮某绦蛟O(shè)計(jì)_第1頁
php面向?qū)ο蟮某绦蛟O(shè)計(jì)_第2頁
php面向?qū)ο蟮某绦蛟O(shè)計(jì)_第3頁
php面向?qū)ο蟮某绦蛟O(shè)計(jì)_第4頁
php面向?qū)ο蟮某绦蛟O(shè)計(jì)_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本文格式為Word版,下載可任意編輯——php面向?qū)ο蟮某绦蛟O(shè)計(jì)php面向?qū)ο蟮某绦蛟O(shè)計(jì)

PHP獨(dú)特的語法混合了C、Java、Perl以及PHP自創(chuàng)的語法。它可以比CGI或者Perl更快速地執(zhí)行動(dòng)態(tài)網(wǎng)頁。以下是我為大家探尋整理的php面向?qū)ο蟮某绦蛟O(shè)計(jì),夢(mèng)想能給大家?guī)矸鲋?更多精彩內(nèi)容請(qǐng)實(shí)時(shí)關(guān)注我們我!

public公有的:本類,子類,外部對(duì)象都可以調(diào)用

protected受養(yǎng)護(hù)的:本類子類,可以執(zhí)行,外部對(duì)象不成以調(diào)用

private私有的:只能本類執(zhí)行,子類與外部對(duì)象都不成調(diào)用

面向?qū)ο缶幊痰娜筇攸c(diǎn)

1封閉性

封閉性,也可以稱為信息暗藏。就是將一個(gè)類的使用和實(shí)現(xiàn)分開,只留存有限的接口方法與外部聯(lián)系。對(duì)于用到該類的開發(fā)人員,只要知道這個(gè)類如何使用即可,而不用去關(guān)切這個(gè)類是如何實(shí)現(xiàn)的。這樣做可以讓開發(fā)人員更好地把精力集中起來專注別的事情,同時(shí)也制止了程序之間的相互憑借而帶來的不便。

2繼承性

繼承性就是派生類子類自動(dòng)繼承一個(gè)或多個(gè)基類父類中的屬性與方法,并可以重寫或添加新的屬性和方法。繼承這個(gè)特性簡(jiǎn)化了對(duì)象和類的創(chuàng)造,增加了代碼的可重性。繼承分單繼承和多繼承,PHP所支持的是單繼承,也就是說,一個(gè)子類有且只有一個(gè)父類。

3多態(tài)性

多態(tài)性是指同一個(gè)類的不同對(duì)象,使用同一個(gè)方法可以獲得不同的結(jié)果,這種技術(shù)稱為多態(tài)性。多態(tài)性鞏固了軟件的生動(dòng)性和重用性。

類的定義

一個(gè)類可以包含有屬于自己的常量,變量稱為"屬性'以及函數(shù)稱為"方法'。

和好多面向?qū)ο蟮恼Z言一樣,PHP也是通過class關(guān)鍵字加類名來定義類的。類的格式如下:

Classmyobject

//

?

定義:物以類聚,把具有好像特性的對(duì)象歸到一個(gè)類中,類定義了這些好像對(duì)象擁有的一致屬性和方法。類是好像對(duì)象的描述,稱為類的定義,是該類對(duì)象的藍(lán)圖或原型。

類的對(duì)象稱為類的一個(gè)實(shí)例。要?jiǎng)?chuàng)造一個(gè)類的實(shí)例,務(wù)必使用new關(guān)鍵字。

001ZpQGYty6MeYnSNUh25690

//類的定義以關(guān)鍵字class開頭,類的命名通常以每個(gè)單詞第一個(gè)字母大寫

classNbaPlayer

public$name=Jordan;//定義屬性

public$height=198cm;

public$team=Bull;

public$playerNumber=23;

//定義方法

publicfunctionrun

echoRunning\n;

publicfunctiondribblr

echoDribbling\n;

publicfunctionpass

echoPassing\n;

//類到對(duì)象的實(shí)例化

//類的實(shí)例化為對(duì)象時(shí)使用關(guān)鍵字new,new之后緊跟類的名稱和一對(duì)括號(hào)

$jordan=newNbaPlayer;

//對(duì)象中的屬性成員可以通過-符號(hào)來訪問

echo$jordan-name.\n;

//對(duì)象中的成員方法可以通過-符號(hào)來訪問

$jordan-dribble;

$jordan-run;

?

成員方法

類中的函數(shù)被稱為成員方法。函數(shù)和成員方法唯一的識(shí)別就是,函數(shù)實(shí)現(xiàn)的是某個(gè)獨(dú)立的功能,而成員方法是實(shí)現(xiàn)類中的一個(gè)行為,是類的一片面。

下面就來擴(kuò)展上面的myobject類,為它添加一個(gè)成員方法,代碼如下:

classmyobject

functiongetobjectname$name

echo商品名稱為:.$name;

?

該方法的作用是輸出商品名稱,商品名稱是通過方法的參數(shù)傳進(jìn)來的。

類是一個(gè)抽象的描述,是功能好像的一組對(duì)象的集合。假設(shè)想用到類中的方法和變量,首先就要把它概括落實(shí)到一個(gè)實(shí)體,也就是對(duì)象上。

類常量

既然有變量,當(dāng)然也會(huì)有常量了。常量就是不會(huì)變更的量,是一個(gè)恒值。眾所周知的一個(gè)常量就是圓周率Pi。定義常量使用關(guān)鍵字const如:

ConstPI=3.14159;

構(gòu)造函數(shù)

PHP5允行開發(fā)者在一個(gè)類中定義一個(gè)方法作為構(gòu)造函數(shù)。具有構(gòu)造函數(shù)的類會(huì)在每次創(chuàng)造新對(duì)象時(shí)先調(diào)用此方法,所以分外適合在使用對(duì)象之前做一些初始化工作。

//類的定義以關(guān)鍵字class開頭,類的命名通常以每個(gè)單詞第一個(gè)字母大寫

classNbaPlayer

public$name=Jordan;//定義屬性

public$height=198cm;

public$team=Bull;

public$playerNumber=23;

//構(gòu)造函數(shù),在對(duì)象被實(shí)例化的時(shí)候自動(dòng)調(diào)用

function__construct$name,$height,$weight,$team

echoItisanNbaPlayerconstructor\n;

$this-name=$name;

//$this是PHP里面的偽變量,表示對(duì)象自身??梢酝ㄟ^$this-的方式訪問對(duì)象的屬性和方法

$this-height=$height;

$this-weight=$weight;

$this-team=$team;

//定義方法

publicfunctionrun

echoRunning\n;

publicfunctiondribblr

echoDribbling\n;

publicfunctionpass

echoPassing\n;

//類到對(duì)象的實(shí)例化

//類的實(shí)例化為對(duì)象時(shí)使用關(guān)鍵字new,new之后緊跟類的名稱和一對(duì)括號(hào)

$jordan=newNbaPlayerJordan,198cm,98kg,Bull;

//對(duì)象中的屬性成員可以通過-符號(hào)來訪問

echo$jordan-name.\n;

//對(duì)象中的成員方法可以通過-符號(hào)來訪問

$jordan-dribble;

$jordan-run;

//每一次用new實(shí)例化對(duì)象的時(shí)候,都會(huì)用類名后面的參數(shù)列表調(diào)用構(gòu)造函數(shù)

$james=newNbaPlayerJames,203cm,120kg,Heat

echo$james-name.\n;

?

析構(gòu)函數(shù)

//類的定義以關(guān)鍵字class開頭,類的命名通常以每個(gè)單詞第一個(gè)字母大寫

classNbaPlayer

public$name=Jordan;//定義屬性

public$height=198cm;

public$team=Bull;

public$playerNumber=23;

//構(gòu)造函數(shù),在對(duì)象被實(shí)例化的時(shí)候自動(dòng)調(diào)用

function__construct$name,$height,$weight,$team

echoItisanNbaPlayerconstructor\n;

$this-name=$name;

//$this是PHP里面的.偽變量,表示對(duì)象自身??梢酝ㄟ^$this-的方式訪問對(duì)象的屬性和方法

$this-height=$height;

$this-weight=$weight;

$this-team=$team;

//析構(gòu)函數(shù),在程序執(zhí)行終止的時(shí)候會(huì)自動(dòng)調(diào)用

//析構(gòu)函數(shù)通常被用于清理程序使用的資源。譬如程序使用了打印機(jī),那么可以再析構(gòu)函數(shù)里面釋放打印機(jī)資源

function__destruct

echoDestroying.$this-name.\n;

//定義方法

publicfunctionrun

echoRunning\n;

publicfunctiondribblr

echoDribbling\n;

publicfunctionpass

echoPassing\n;

//類到對(duì)象的實(shí)例化

//類的實(shí)例化為對(duì)象時(shí)使用關(guān)鍵字new,new之后緊跟類的名稱和一對(duì)括號(hào)

$jordan=newNbaPlayerJordan,198cm,98kg,Bull;

//對(duì)象中的屬性成員可以通過-符號(hào)來訪問

echo$jordan-name.\n;

//對(duì)象中的成員方法可以通過-符號(hào)來訪問

$jordan-dribble;

$jordan-run;

//每一次用new實(shí)例化對(duì)象的時(shí)候,都會(huì)用類名后面的參數(shù)列表調(diào)用構(gòu)造函數(shù)

$james=newNbaPlayerJames,203cm,120kg,Heat

echo$james-name.\n;

//通過把變量設(shè)為null,可以觸發(fā)析構(gòu)函數(shù)的調(diào)用

//當(dāng)對(duì)象不再使用的時(shí)候會(huì)觸發(fā)析構(gòu)函數(shù)

$james=null;

echofromnowonJameswillnotbeused.\n

?

析構(gòu)函數(shù)會(huì)在到某個(gè)對(duì)象的全體引用都被刪除或者當(dāng)對(duì)象被顯式銷毀時(shí)執(zhí)行。

對(duì)象的引用

//類的定義以關(guān)鍵字class開頭,類的命名通常以每個(gè)單詞第一個(gè)字母大寫

classNbaPlayer

public$name=Jordan;//定義屬性

public$height=198cm;

public$team=Bull;

public$playerNumber=23;

//構(gòu)造函數(shù),在對(duì)象被實(shí)例化的時(shí)候自動(dòng)調(diào)用

function__construct$name,$height,$weight,$team

echoItisanNbaPlayerconstructor\n;

$this-name=$name;

//$this是PHP里面的偽變量,表示對(duì)象自身??梢酝ㄟ^$this-的方式訪問對(duì)象的屬性和方法

$this-height=$height;

$this-weight=$weight;

$this-team=$team;

//析構(gòu)函數(shù),在程序執(zhí)行終止的時(shí)候會(huì)自動(dòng)調(diào)用

//析構(gòu)函數(shù)通常被用于清理程序使用的資源。譬如程序使用了打印機(jī),那么可以再析構(gòu)函數(shù)里面釋放打印機(jī)資源

function__destruct

echoDestroying.$this-name.\n;

//定義方法

publicfunctionrun

echoRunning\n;

publicfunctiondribblr

echoDribbling\n;

publicfunctionpass

echoPassing\n;

//類到對(duì)象的實(shí)例化

//類的實(shí)例化為對(duì)象時(shí)使用關(guān)鍵字new,new之后緊跟類的名稱和一對(duì)括號(hào)

$jordan=newNbaPlayerJordan,198cm,98kg,Bull;

//對(duì)象中的屬性成員可以通過-符號(hào)來訪問

echo$jordan-name.\n;

//對(duì)象中的成員方法可以通過-符號(hào)來訪問

$jordan-dribble;

$jordan-run;

//每一次用new實(shí)例化對(duì)象的時(shí)候,都會(huì)用類名后面的參數(shù)列表調(diào)用構(gòu)造函數(shù)

$james=newNbaPlayerJames,203cm,120kg,Heat

echo

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論