PHP面向對象構造方法與析構方法
技術支持服務電話:15308000360 【7x24提供運維服務,解決各類系統/軟硬件疑難技術問題】
1,對象中成員的訪問(就是在一個對象的內部方法中,去訪問本對象中的其它方法和成員屬性)
2,在對象中的方法中都有一個默認的$this關鍵字,這個關鍵字代表調用這個方法的對象
3,第一人稱代詞:我
構造方法,構造器
1,是對象創建完成之后,’第一個”自動調用’的方法
2,構造方法的定義,方法名是一個固定的和類名相同
在PHP5中,構造方法選擇使用魔術方法__construct(),所有類中聲明構造方法都使用這個名稱
優點:在改變類名時,構造方法不用改變
作用:就是為成員屬性初始化
魔術方法:
在類中寫出了某個魔術方法,這個方法對象的功能就會添加上,方法名稱都是固定的,沒有自己定義的。每一個魔術方法,都是在不同時刻為了完成某一功能自動調用的方法,不同的魔術方法有不同調用時機,這些方法名都是以”__”開頭的方法:
- __construct();
- __destruct();
- __set();
- __get();
- __isset();
- __unset();
- __clone();
- __call();
- __sleep();
- __weakup();
- __toString();
- __autoload();
析構方法:
__destruct();當對象被釋放之前最后一個自動調用的方法。作用就是關閉一些資源,作一些清理的工作。也就是完成垃圾回收的功能。
關于構造方法以及析構方法的實例寫一個吧,用的都是魔術方法:
eg:
class Person{ var $name; var $age; var $sex; function __construct($name="",$age=20,$sex="male"){ $this->name=$name; $this->age=$age; $this->sex=$sex; } function say(){ echo "我的名字是:".$this->name.",年齡是:".$this->age.",性別是:".$this->sex.'<br>'; } function __destruct(){ echo $this->name.",再見"."<br>"; } } $p1=new Person("rayhooo",26,"male"); $p2=new Person("pretty",24,"female"); $p3=new Person("insect",24,"female"); $p1->say(); $p1=null; $p2->say(); $p3->say();