0
線:return 'Static hello ' . self::static_user . '...<br />';
產地:Fatal error: Undefined class constant 'static_user' in ....
訪問抽象類的靜態變量在子類
注:邏輯可能是愚蠢的,但我只是玩機智的時刻。問題是我如何訪問子類中的抽象類的靜態變量?我可以在子類中使用$this->public_user
公開$public_user
。
abstract class UserAbstract
{
protected $public_user = null;
static protected $static_user = null;
public function __construct($name)
{
$this->public_user = $name;
self::$static_user = $name;
}
abstract static function static_hello();
}
class User extends UserAbstract
{
static function static_hello()
{
return 'Static hello ' . self::static_user . '...<br />';
}
}
$obj_user = new User('Voodoo');
echo $obj_user->static_hello();
我不能相信我自己。我怎麼想那個.....總是有點小事。我真的知道我必須使用$標記,但有時會發生,我可以說什麼..謝謝 – BentCoder
我想使用User :: static_hello();但不打印任何東西。甚至沒有錯誤。 – BentCoder
@MadMax:當這個函數只返回值時,爲什麼會打印任何東西? –