版权声明:未经允许不得转载。 https://blog.csdn.net/qq_35958788/article/details/83005138
一个self的类子
class Car
{
public static function model()
{
self::getModel();
}
protected static function getModel()
{
echo "I am a Car!";
}
}
类的外面调用:Car::model(); //I am a Car!
- 另一个类继承Car
class Mercedes extends Car
{
protected static function getModel()
{
echo "I am a Mercedes!";
}
}
类的外面调用:Mercedes::model();//I am a Car!
一个static的类子
class Car
{
public static function model()
{
static::getModel();
}
protected static function getModel()
{
echo "I am a Car!";
}
}
class Mercedes extends Car
{
protected static function getModel()
{
echo "I am a Mercedes!";
}
}
类的外面调用:Mercedes::model();//I am a Mercedes!
结束
- 关键字“self”的工作原理是:它会调用当前类(current class)的方法。
- 在php5.3中加入一个新特性—延迟静态绑定(late static binding),用static关键字调用一个继承方法时,它将在运行时绑定调用类(calling class)。