我在父类中有受保护的变量 UserId。我将在我的子类中扩展变量,如下所示
class Main
{
protected $UserId = "151";
protected static $UserName = "Madhavan";
protected function SampleMethod()
{
print "This is Sample Method";
}
}
class SubMain extends Main
{
function __construct()
{
print parent::SampleMethod();
print "User Id is ".$this->UserId."<br/>";
print parent::$UserName;
print "User Id is ".parent::$UserId."<br/>";
}
}
当我使用$this->UserId时,它的打印很好。但是当我使用 Parent::$UserId 时,它的显示错误
致命错误:访问未声明的静态属性:Main::$UserName
为什么它没有显示我由parent::SampleMethod()访问的函数,因为该函数不是静态的。