您的位置:首页 > 编程语言 > PHP开发

PHP 基础知识温习,你还记得么?

2015-12-31 12:03 525 查看
下面一段代码的结果是啥?

class A {

    

    public static $test;

}

class B extends A{

    

}

A::$test = 10;

B::$test = 12;

echo A::$test.'==='.B::$test;

答案是:12===12

class A {

    public static $test;

}

class B extends A{

    public static $test;

}

A::$test = 10;

B::$test = 12;

echo A::$test.'==='.B::$test;

答案是:10===12

总结:静态变量是基于类的共享的,如果子类继承的父类的静态变量,那么不论改变子类或者父类的静态变量的值,他们的结果都会改变;如果子类的静态变量与父类中同名,那么子类的静态变量属于子类,父类的静态变量属于父类,两者不是同一个,改变对应类的值不会造成父类或者子类静态变量值的变化。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php class