定義乙個父類這就要用到後期靜態繫結的技術,所謂後期,是指靜態方法的呼叫者,只有在執行狀態下才進行動態繫結,使用關鍵字 static 來實現,
此時, static 就像乙個變數,始終與當前的呼叫類是繫結的
class father
//靜態方法: 訪問當前類中的其它靜態成員
public static function getmoney()
}class son extends father
} echo father::$money.'
';//呼叫父類的靜態方法,獲取父類類名
echo father::getclass().'
';//獲取父類中其它靜態成員的相關資訊
echo father::getmoney().'';
echo son::$money.'
';//子類呼叫父類的靜態方法
//son類覆寫了father類的getclass(),呼叫子類已重寫的方法,返回子類名稱
echo son::getclass().'
';//因為son類繼承了father類,所以也可以直接訪問父類中的getmoney()方法
//因為沒有子類son中對getmoney()進行覆寫,所以訪問的還是father類中的資料
echo son::getmoney().'';
//此時我再用父類呼叫getmoney(),static 也會自動與 father類繫結
echo father::getmoney();
php後期靜態繫結
後期靜態繫結 static 不再被解析為定義當前方法或屬性所在的類,而是在實際執行時計算的 可用 get called class 函式來得到被呼叫的方法所在的類名 this是指向當前物件 self 指向當前的類 self就是寫在哪個類裡面,實際呼叫的就是這個類 parent 指向父類 static...
PHP延遲靜態繫結
1 self用法 self是指向定義它的當前類的指標。當前類 current class class person 獲取年齡 public static function getage 輸出 self name i am person self age 18 2 static用法 static是指向...
PHP延遲靜態繫結
所謂延遲靜態繫結,顧名思義,靜態呼叫時 符號左側的部分的的繫結是延遲,也就是說不再被解析為定義當前方法所在的類,而是在實際執行時計算的。class people public static function eat class fatguy extends people public static ...