最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php學(xué)習(xí)筆記 數(shù)組的常用函數(shù)

 更新時(shí)間:2011年06月13日 23:02:34   作者:  
只要一個(gè)變量,需要在多個(gè)方法使用,就將這個(gè)變量聲明為成員屬性,可以直接在這個(gè)對(duì)象中的所有方法中使用 成員屬性,相當(dāng)于這個(gè)對(duì)象中的全局變量
復(fù)制代碼 代碼如下:

<?php
/*
* 封裝性:面向?qū)ο笕筇匦灾?
*
* 1.就是把對(duì)象的成員(屬性,方法)結(jié)合成一個(gè)獨(dú)立的相同單位,并盡可能隱藏對(duì)象的內(nèi)部細(xì)節(jié)
* 訪問權(quán)限修飾符 public protected private
* private:私有的,用這個(gè)關(guān)鍵字修飾的成員,只能在對(duì)象內(nèi)部訪問(只有用$this訪問)
*
* 屬性可以封裝:
* 只要一個(gè)變量,需要在多個(gè)方法使用,就將這個(gè)變量聲明為成員屬性,可以直接在這個(gè)對(duì)象中的所有方法中使用
*
* 成員屬性,相當(dāng)于這個(gè)對(duì)象中的全局變量
*
* 成員屬性都會(huì)在方法中使用,成員屬性值的變化其實(shí)就是在改變方法的執(zhí)行行為,也就是改變了對(duì)象的功能
*
* 成員屬性的值如果不正常,方法執(zhí)行的功能葉就不正常
*
* 作用:不需要在對(duì)象外部改變或讀取它的值
* 1.封裝
* 再提供一個(gè)公有的方法(經(jīng)過方法對(duì)對(duì)象成員屬性進(jìn)行賦值和取值就可以控制)
*
*
* 方法也可以封裝
*
* 作用:
* 1.使用private修飾使其只能在內(nèi)部使用
*
* 2.一個(gè)類中有100個(gè)方法,封裝了95個(gè)(為另外5個(gè)服務(wù)的方法),只有5個(gè)方法可以使用
*
* 100個(gè)成員屬性,都讓取值,不可以改值;或者只可改值,不可獲取值//此種情況下使用以下方法比較方便
* 和封裝有關(guān)的魔術(shù)方法:
*
* __set();//是直接設(shè)置[私有的]成員屬性值時(shí),自動(dòng)調(diào)用的方法
* __get();//是直接獲取[私有的]成員屬性值時(shí),自動(dòng)調(diào)用的方法
* __isset();//是直接使用isset()查看對(duì)象中私有屬性是否存在時(shí),自動(dòng)調(diào)用這個(gè)方法
* __unset();//是直接使用unset()刪除對(duì)象中私有屬性時(shí),自動(dòng)調(diào)用的方法
*
*
*
*
*
*
*
*/
class Person{
//x封裝成員屬性,不需要在對(duì)象外部改變
private $name;
private $age;
private $sex;
private __unset($proName){
unset($this->$proName);
}
//是直接查看對(duì)象中私有屬性是否存在時(shí),自動(dòng)調(diào)用這個(gè)方法
//__isset($proName)的使用,$proName代表屬性名
private function __isset($proName){
return isset($this->$proName);//isset()返回是否存在
}
function __construct($name,$age,$sex){
$this->name=$name;
$this->age=$age;
$this->sex=$sex;
}
//當(dāng)獲取私有的成員屬性時(shí),自動(dòng)調(diào)用此方法
private function __get($proName)
{
//控制所獲取的值
if($proName=="age"){
if($this-age>40)
return $this->age-10;
}
return $this->$proName;
}
//當(dāng)設(shè)置私有的成員屬性時(shí),自動(dòng)調(diào)用此方法
private function __set($proName,$proValue){
//$proName表示成員屬性名,$proValue表示成員屬性值
//控制設(shè)置范圍
if($proName=="age"){
if($proValue > 100 || $proValue<0)
return;
}
$this->$proName=$proValue;
}
//提供公有方法來設(shè)置成員屬性的值
function setAge($age){
//控制年齡范圍,增加安全性
if($age > 100 || $age < 0 )
return;
$this->age=$age;
}
//提供公有方法來獲取成員屬性的值
function getAge(){
//控制獲取年齡的范圍
if($this->age < 30)
return $this->age;
else if($this->age<40)
return $this->age-5;
else if($this->age<50)
return $this->age;
else
return $this->age-15;
提供公有方法來 }
function say(){
echo "我的名字:{$this->name},我的年齡:{$this->age},我的姓別:{$this->sex}<br>";
//訪問封裝過的 run()方法
$this-run();
}
private function run(){
echo '111111111111<br>'
}
function eat(){
}
//析構(gòu)方法
function __destruct(){
}
}
$p1=new Person("zhangsan",25,"男");
$p2=new Person;
$p3=new Person;
//$p1->age=-50;//因?yàn)槟挲g在外部隨意訪問,所以成員屬性藥封裝,才有安全性。
$p1->setAge(30);//通過方法來設(shè)置成員屬性德值
$p1->getAge();//通過方法來獲取成員屬性德值
//通過添加家魔術(shù)方法__set($proName,$proValue) __get($proName),就可以直接調(diào)用成員屬性了
$p1->say();//可以調(diào)用
$p1->run();//私有的方法不能直接調(diào)用
//刪除$p1里面的name
unset($p1->name);
//判斷name是否存在
if(isset($p1->name)){
echo "存在<br>";
}else{
echo "沒有這個(gè)成員 <br>";
}
?>

作者:代號(hào)極光
出處:http://zizhuyuan.cnblogs.com

相關(guān)文章

最新評(píng)論

长宁区| 尚志市| 历史| 邯郸市| 韩城市| 阆中市| 海门市| 开阳县| 九龙城区| 皋兰县| 望都县| 大余县| 渭源县| 湘阴县| 惠东县| 色达县| 黄大仙区| 宁城县| 襄垣县| 辛集市| 怀柔区| 视频| 体育| 新晃| 丹寨县| 峨眉山市| 神池县| 右玉县| 天水市| 湘西| 贺州市| 崇州市| 安丘市| 延边| 塘沽区| 英德市| 定兴县| 阳信县| 曲阳县| 汶上县| 龙门县|