class A {
public static function who() {
echo __CLASS__;
}
public static function test() {
//self::who();最后打印结果会是A
static::who(); // 后期静态绑定从这里开始(最后打印结果会是B)
}
}
class B extends A {
public static function who() {
echo __CLASS__;
}
}
B::test();
class A {
public static function foo() {
static::who();
}
public static function who() {
echo __CLASS__."\n";
}
}
class B extends A {
public static function test() {
A::foo();//A
parent::foo();//C
self::foo();//C
}
public static function who() {
echo __CLASS__."\n";
}
}
class C extends B {
public static function who() {
echo __CLASS__."\n";
}
}
C::test();
PHP手册-静态绑定(继承关系中处理静态成员)
最新推荐文章于 2021-03-20 09:27:51 发布