PHP public訪問(wèn)修飾符
示例:
<?php header("content-type:text/html;charset=utf-8"); // BaseClass class pub { public $tag_line = "服務(wù)器之家!"; function display() { echo $this->tag_line."<br/>"; } } // 子類 class child extends pub { function show(){ echo $this->tag_line; } } // 對(duì)象聲明 $obj= new child; // 輸出 echo $obj->tag_line."<br/>"; $obj->display(); $obj->show(); ?>
輸出:
服務(wù)器之家!
服務(wù)器之家!
服務(wù)器之家!
private訪問(wèn)修飾符
private修飾符可在其定義的類及其父類或繼承類中使用。如果一個(gè)類成員聲明為protected,則只能在類本身內(nèi)以及繼承和父類中訪問(wèn)它。
示例:
<?php header("content-type:text/html;charset=utf-8"); // 基類 class pro { protected $x = 500; protected $y = 500; // 實(shí)現(xiàn)減法 function sub() { echo $sum=$this->x-$this->y . "<br/>"; } } // 子類-繼承類 class child extends pro { function mul() //實(shí)現(xiàn)乘法 { echo $sub=$this->x*$this->y; } } $obj= new child; $obj->sub(); $obj->mul(); ?>
輸出:
0
250000
protected訪問(wèn)修飾符
protected修飾符可在定義它的類中使用,注:它不能在類外部訪問(wèn)意味著繼承類。
如果類成員聲明為private,則它只能由定義該成員的類訪問(wèn)。
示例:
<?php header("content-type:text/html;charset=utf-8"); // 基類 class demo { private $name="服務(wù)器之家!"; private function show() { echo "這是基類的私有方法"; } } // 子類 class child extends demo { function display() { echo $this->name; } } // 對(duì)象聲明 $obj= new child; // 出現(xiàn)異常---未捕獲錯(cuò)誤:調(diào)用私有方法demo::show() //$obj->show(); //出現(xiàn)異常--未定義的屬性:子級(jí)::$name $obj->display(); ?>
輸出
從上例可以看出,它將顯示錯(cuò)誤,因?yàn)闊o(wú)法在類外訪問(wèn)私有類數(shù)據(jù)。