<?php
abstract class Shop{
public static function create(){
//new static(); static类似于self,但它指的是被调用的类而不是包含类。他的意思是将生成一个新的Shop2对象,而不是试图实例化一个shop对象
return new self();
}
}
class Shop1 extends Shop{
public static function create(){
return 'shop1';
}
}
class Shop2 extends Shop{
public static function create(){
return 'shop2';
}
}
print_r(Shop2::create());
?>
关于php的延迟静态绑定
- 上一篇: 关于js的闭包
- 下一篇: php设计模式之单例模式简单示例
已有 0 条评论