真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

PHP中三種訪問(wèn)數(shù)據(jù)方式的定義和作用-創(chuàng)新互聯(lián)

本文目標(biāo)

掌握PHP中數(shù)據(jù)訪問(wèn)的3種方式的定義和作用

鶴峰網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)公司!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、響應(yīng)式網(wǎng)站等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)公司自2013年起到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)公司。

1、public

2、protected

3、private

(一)、數(shù)據(jù)訪問(wèn)的3種方式

1、Public:公有的類成員

可以在任何地方訪問(wèn),具體可以被哪些訪問(wèn)了:

● 定義該類的類(自身)

● 該類的子類

● 其他類

2、Protected:受保護(hù)的類成員

● 定義該類的類(自身)

● 該類的子類

3、Private:私有的類成員

● 只有自身才可以訪問(wèn)

總結(jié):從上到下約束能力是越來(lái)越強(qiáng)的

單純從以上的文字描述,我們理解起來(lái)還是有點(diǎn)費(fèi)力的,那么還是按照理論+實(shí)踐的方式來(lái)進(jìn)行理解,那么接下來(lái)我們就通過(guò)具體的代碼來(lái)理解這3種數(shù)據(jù)訪問(wèn)的方式在PHP中到底是如何實(shí)現(xiàn)的,到底它們各自的特點(diǎn)是什么,最后來(lái)體會(huì)一下它們的約束能力到底又是怎樣。

(二)具體代碼

說(shuō)明:為了讓大家能更好的理解面向?qū)ο?,所以寫文章的時(shí)候,我也是盡量遵循一定的規(guī)則,由淺到深,由易到難,所以我寫的每篇文章都是和上篇文章有一定的關(guān)聯(lián),比如以下的代碼案例,我又是在上篇文章的代碼上進(jìn)行的拓展和延伸。

案例一:知道public的定義,然后證明它可以在3個(gè)地方都可以訪問(wèn)(1.在自己定義的類中,2.在子類中 3.在外部)

name."在吃".$food."
"; } } //女主播 class Anchors extends Human{ public $name = ""; public $stageName = ""; public function __construct( $name,$stageName ){ $this->name = $name; $this->stageName = $stageName; } public function singing(){ echo "我是女主播,我會(huì)唱歌
"; } } // Nba球員類 class NbaPlayer extends Human{ //因?yàn)楦割愐呀?jīng)有了,所以就不需要再寫了,通過(guò)extends來(lái)實(shí)現(xiàn) // public $name = "";//姓名 // public $height = "";//身高 // public $weight = "";//體重 public $team = "";//團(tuán)隊(duì) public $playerName = "";//球員號(hào)碼 public function __construct( $name,$height,$weight,$team,$playerName ){ $this->name = $name; $this->height=$height; $this->weight = $weight; $this->team = $team; $this->playName = $playerName; echo "構(gòu)造函數(shù)執(zhí)行了,當(dāng)前對(duì)象是{$this->name}
"; } //跑步 public function run(){ echo "跑步中
"; } //跳躍 public function jump(){ echo "跳躍
"; } //運(yùn)球 public function dribble(){ echo "運(yùn)球
"; } //傳球 public function pass(){ echo "傳球
"; } //投籃 public function shoot(){ echo "投籃
"; } //扣籃 public function dunk(){ echo "扣籃
"; } } //數(shù)據(jù)訪問(wèn)測(cè)試 //public 測(cè)試 //1、測(cè)試在類的外部可以訪問(wèn) //創(chuàng)建喬丹對(duì)象 $jordon = new NbaPlayer("喬丹","1.98米","98公斤","公牛","23"); //輸出喬丹對(duì)象 echo "名稱= ".$jordon->name."
";//結(jié)果能夠輸出來(lái),說(shuō)明在外部是可以訪問(wèn)Public類成員的 //2、測(cè)試在類的自身里面可以訪問(wèn) //例子:比如構(gòu)造函數(shù)里,我們可以直接通過(guò)$this->team //3、測(cè)試是否可以子類中可以訪問(wèn) //例子:比如父類中定義的name 一樣可以在子類(NbaPlayer)的構(gòu)造函數(shù)中直接訪問(wèn) ?>

運(yùn)行效果如下:

PHP中三種訪問(wèn)數(shù)據(jù)方式的定義和作用

案例二:知道protected的定義,然后證明它可以在2個(gè)地方都可以訪問(wèn)(1.在自己定義的類中,2.在子類中 )

name."在吃".$food."
"; } //測(cè)試protected類成員是否可以在自身類中可以訪問(wèn) public function getAddrInHuman(){ echo "Human 自身類中的add=".$this->addr."
"; } } //女主播 class Anchors extends Human{ public $name = ""; public $stageName = ""; public function __construct( $name,$stageName ){ $this->name = $name; $this->stageName = $stageName; } public function singing(){ echo "我是女主播,我會(huì)唱歌
"; } //重寫方法eat public function eat($food){ echo "我是女主播,我是邊唱歌邊吃{$food}
"; } } class NbaPlayer extends Human{ //因?yàn)楦割愐呀?jīng)有了,所以就不需要再寫了,通過(guò)extends來(lái)實(shí)現(xiàn) // public $name = "";//姓名 // public $height = "";//身高 // public $weight = "";//體重 public $team = "";//團(tuán)隊(duì) public $playerName = "";//球員號(hào)碼 public function __construct( $name,$height,$weight,$team,$playerName ){ $this->name = $name; $this->height=$height; $this->weight = $weight; $this->team = $team; $this->playName = $playerName; echo "構(gòu)造函數(shù)執(zhí)行了,當(dāng)前對(duì)象是{$this->name}
"; } //測(cè)試protected類成員是否可以在子類中可以訪問(wèn) public function getAddrInNbaPlayer(){ echo "在NbaPlayer子類中addr=".$this->addr."
"; } } //創(chuàng)建喬丹對(duì)象 $jordon = new NbaPlayer("喬丹","1.98米","98公斤","公牛","23"); //數(shù)據(jù)訪問(wèn)測(cè)試 //protected測(cè)試 //1、測(cè)試是否可以在自身類中可以訪問(wèn) $jordon->getAddrInHuman();//結(jié)果OK,確實(shí)是可以訪問(wèn) //2.測(cè)試是否可以在子類中訪問(wèn) $jordon->getAddrInNbaPlayer();//結(jié)果OK,確實(shí)也是可以訪問(wèn) //3.測(cè)試是否可以被外部訪問(wèn) echo "在類外部訪問(wèn)addr=".$jordon->addr."
";//結(jié)果報(bào)錯(cuò),說(shuō)明不行 ?>

運(yùn)行效果如下:

PHP中三種訪問(wèn)數(shù)據(jù)方式的定義和作用

案例三:知道private的定義,然后證明它只能在1個(gè)地方可以訪問(wèn)(1.在自己定義的類中)

isHungry."
"; } } //女主播 class Anchors extends Human{ public $name = ""; public $stageName = ""; public function __construct( $name,$stageName ){ $this->name = $name; $this->stageName = $stageName; } public function singing(){ echo "我是女主播,我會(huì)唱歌
"; } //重寫方法eat public function eat($food){ echo "我是女主播,我是邊唱歌邊吃{$food}
"; } } class NbaPlayer extends Human{ //因?yàn)楦割愐呀?jīng)有了,所以就不需要再寫了,通過(guò)extends來(lái)實(shí)現(xiàn) // public $name = "";//姓名 // public $height = "";//身高 // public $weight = "";//體重 public $team = "";//團(tuán)隊(duì) public $playerName = "";//球員號(hào)碼 public function __construct( $name,$height,$weight,$team,$playerName ){ $this->name = $name; $this->height=$height; $this->weight = $weight; $this->team = $team; $this->playName = $playerName; // echo "構(gòu)造函數(shù)執(zhí)行了,當(dāng)前對(duì)象是{$this->name}
"; } //測(cè)試private類成員是否可以在子類中訪問(wèn) public function getIsHungryInNbaPlayer(){ echo "在NbaPlayer子類中isHungry=".$this->isHungry."
"; } } //創(chuàng)建喬丹對(duì)象 $jordon = new NbaPlayer("喬丹","1.98米","98公斤","公牛","23"); //數(shù)據(jù)訪問(wèn)測(cè)試 //private測(cè)試 //1.測(cè)試私有變量能否被外部訪問(wèn) echo "私有變量isHungry =".$jordon->isHungry ."
";//結(jié)果不能訪問(wèn),說(shuō)明private變量不能被子類訪問(wèn) //測(cè)試私有變量能否在定義的類的內(nèi)部訪問(wèn) echo $jordon->getPrivateInfo();//結(jié)果Ok,說(shuō)明可以 //測(cè)試私有變量是否可以在子類中訪問(wèn) $jordon->getIsHungryInNbaPlayer();//結(jié)果報(bào)錯(cuò),說(shuō)明也不能在子類中訪問(wèn) ?>

運(yùn)行效果如下:

PHP中三種訪問(wèn)數(shù)據(jù)方式的定義和作用

總結(jié):

1、Public:公有的類成員

可以在任何地方訪問(wèn),具體可以被哪些訪問(wèn)了:

● 定義該類的類(自身)

● 該類的子類

● 其他類

2、Protected:受保護(hù)的類成員

● 可以被其自身及其子類訪問(wèn)

3、Private:私有的類成員

● 只有自身才可以訪問(wèn)

4.為了讓外部可以訪問(wèn)private類成員,我們可以通過(guò)在類中定義一個(gè)public方法,然后在public方法中返回private類成員

好,到了這里,想必大家對(duì)數(shù)據(jù)訪問(wèn)應(yīng)該有了一個(gè)比較清晰的認(rèn)識(shí),那我們現(xiàn)在來(lái)學(xué)以致用,用我們學(xué)到的這個(gè)知識(shí)來(lái)解決以下的問(wèn)題,先自己思考一下怎么做,然后再看答案

問(wèn)題:NBA球員一般都不想讓其他人知道自己的真實(shí)姓名,比如說(shuō)我明明是40歲,但是我就想讓別人以為是38歲

思考中.......................

答案揭曉:

代碼如下:

name = $name;
        $this->stageName = $stageName;
    }
    public function singing(){
        echo "我是女主播,我會(huì)唱歌
"; } //重寫方法eat public function eat($food){ echo "我是女主播,我是邊唱歌邊吃{$food}
"; } } class NbaPlayer extends Human{ //因?yàn)楦割愐呀?jīng)有了,所以就不需要再寫了,通過(guò)extends來(lái)實(shí)現(xiàn) // public $name = "";//姓名 // public $height = "";//身高 // public $weight = "";//體重 public $team = "";//團(tuán)隊(duì) public $playerName = "";//球員號(hào)碼 //數(shù)據(jù)訪問(wèn) private $age = "40"; //end public function __construct( $name,$height,$weight,$team,$playerName ){ $this->name = $name; $this->height=$height; $this->weight = $weight; $this->team = $team; $this->playName = $playerName; echo "構(gòu)造函數(shù)執(zhí)行了,當(dāng)前對(duì)象是{$this->name}
"; } //跑步 public function run(){ echo "跑步中
"; } //跳躍 public function jump(){ echo "跳躍
"; } //運(yùn)球 public function dribble(){ echo "運(yùn)球
"; } //傳球 public function pass(){ echo "傳球
"; } //投籃 public function shoot(){ echo "投籃
"; } //扣籃 public function dunk(){ echo "扣籃
"; } //數(shù)據(jù)訪問(wèn) public function getAge(){ // echo $this->name."的age=".$this->age."
"; //既然能夠在自身類中獲取到年齡,那么為了解決NBA球員不想讓別人知道自己真實(shí)年齡的問(wèn)題 //我們就可以對(duì)年齡進(jìn)行操作-造假 讓年齡更小 $age = $this->age-2; echo $this->name."的age=".$age."
"; } } //創(chuàng)建喬丹對(duì)象 $jordon = new NbaPlayer("喬丹","1.98米","98公斤","公牛","23"); $jordon->getAge();//結(jié)果Ok 說(shuō)明年齡是可以獲取到的,既然可以獲取到age我們?cè)诤瘮?shù)內(nèi)部作假,來(lái)達(dá)到一個(gè)謊報(bào)年齡的目的 ?>

運(yùn)行效果如下:

PHP中三種訪問(wèn)數(shù)據(jù)方式的定義和作用

總結(jié):

1.知道了在PHP中數(shù)據(jù)訪問(wèn)有三種形式,public,protected,private

2.知道了3種數(shù)據(jù)訪問(wèn)方式各自的特點(diǎn)

以上就是PHP面向?qū)ο笾?種數(shù)據(jù)訪問(wèn)方式詳解(代碼實(shí)例)的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司其它相關(guān)文章!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


網(wǎng)站名稱:PHP中三種訪問(wèn)數(shù)據(jù)方式的定義和作用-創(chuàng)新互聯(lián)
網(wǎng)頁(yè)路徑:http://weahome.cn/article/dechgd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部