摘要:<?php //后期静态绑定 //使用在静态继承的上下文环境中 //动态匹配静态成员的刁雍者,而不是声明者 //静态方法与调用者的绑定在运行阶段才可以确定 class Father { public static $money=5000; public static function getClass(){ //返回当前类
<?php
//后期静态绑定
//使用在静态继承的上下文环境中
//动态匹配静态成员的刁雍者,而不是声明者
//静态方法与调用者的绑定在运行阶段才可以确定
class Father
{
public static $money=5000;
public static function getClass(){
//返回当前类名
return _CLASS_;
}
public static function getMoney(){
//return self::getClass() .'=>' .self::$money;
//使用在静态继承的上下文环境中,动态设置静态成员的调用者 (Son),允许子类的成员覆盖父类的相同成员
return static::getClass() .'=>' .static::$money;
}
}
class Son extends Father
{
//覆写父类的静态属性
public static $money=3000;
public static function getClass(){
//返回当前类名
return _CLASS_;
}
}
echo Father::getClass(),'<br/>';
echo Father::getMoney(),'<br/>';
//调用子类
echo Son::$money,'<br/>';
echo Son::getClass(),'<br/>';
echo '<hr/>';
//值还是父类的值,而不是自己重写的值
//目的:展示自己覆写的值,这时需要把getMoney()里面的self改成static,动态设置静态成员的调用者
echo Son::getMoney(),'<br/>';
?>
批改老师:韦小宝批改时间:2019-02-22 11:56:31
老师总结:写的还是很不错的 这种技术要和实际的案例来进行结合 这样才能掌握的更快