首頁  >  文章  >  後端開發  >  php 建構函數

php 建構函數

巴扎黑
巴扎黑原創
2016-11-22 10:45:431242瀏覽

php5開始可以在類別中宣告__construct建構方法,當物件被實例化的時候,該方法被呼叫。 
要注意: 
1.如果在繼承的子類別中沒有建構方法而父類別中有建構方法,那麼當實例化子類別時,父類別的建構方法會被隱含呼叫。
2.如果子類別有建構方法,父類別中也有建構方法,那麼子類別要顯示呼叫parent::__construct()才能父類別的建構方法。 
3、為了向前相容,如果在php5類別中沒有找到__construct()方法,它會去找與類別名稱相同的方法名稱的建構器。

class Person{
public $sex = '男';
function __construct() {
echo 'parent __construct';
}
}
class Student extends Person{
private $id;
private $name;
private $age;
//构造函数
function __construct($id,$name,$age) {
parent::__construct();
echo '__construct';
$this->id = $id;
$this->name = $name;
$this->age = $age;
}
public function getName() {
return $this->name;
}
//析构函数
function __destruct(){
echo '__destruct';
}
}
$su = new Student('id001','张三',20);
echo $su->getName();
echo $su->sex;

列印結果:

parent __construct
__construct
張三

 __destruct    


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn