为了账号安全,请及时绑定邮箱和手机立即绑定

PHP static 和 self 的区别

2019.05.15 13:50 172浏览

self :: 在哪个类里调用的就调用哪个类中的方法,不受重写的影响。
static :: 调用的方法如果被子类重写,那调用的就是子类中的方法。

//父类
class father
{
    public static function name()
    {
        echo "xiaosan";
        echo "<br />";
    }
    
    public static function callself()
    {
        self::name();   //调用name方法
    }
    
    public static function callstatic()
    {
        static::name(); //静态绑定
    }
}

//继承类
class son extends father
{
    //重写name方法
    public static function name()
    {
        echo "gaojin";
        echo "<br />";
    }
}

son::callself();    // xiaosan
son::callstatic();  // gaojin
点击查看更多内容
PHP
2人点赞

若觉得本文不错,就分享一下吧!

评论

相关文章推荐

正在加载中
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消