1. Home
  2. /
  3. Web technology
  4. /
  5. PHP
  6. /
  7. OOP
  8. /
  9. [ PHP ] –...

[ PHP ] – OOP 13 get_called_class() 取得是那個類別呼叫的 除錯用

評等結果
點擊便能為這篇文章進行評等!
[評等總次數: 0,平均評等: 0]

再來介紹 物件導向中 get_called_class() 方法,也可使用 __CLASS__;主要是拿來除錯時使用。

class computer {
	public static $num = 0;
	public static function add (){
		echo 'Call From '.get_called_class().' ';
		return self::$num+=1;
	}
}
//
echo computer::$num.'<br>';//初始值
echo computer::add().'<br>';//第一次呼叫 顯示1
echo computer::add().'<br>';//第二次呼叫 顯示2
echo computer::add().'<br>';//第三次呼叫 顯示3
class b extends computer {
	public static function add (){ //覆寫父方法
		echo 'Call From '.get_called_class().' ';
		return self::$num+=2;//改加2
	}
}
echo b::$num.'<br>';//值變 已經變3
echo b::add().'<br>';//子類別已覆寫父的方法 所以是加2 不是加1 顯示5
//靜態屬性與方法 使用時不用生成物件就可以直接使用 類別名稱::靜態屬性 類別名稱靜態方法()
//靜態屬性與方法 在類別中需使用 self or static 不可使用 this
//顯示結果
/*
Call From computer 1
Call From computer 2
Call From computer 3
3
Call From b 5
*/

評等結果
點擊便能為這篇文章進行評等!
[評等總次數: 0,平均評等: 0]

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *