子类可以继承父类的静态方法!但是不能覆盖。因为静态方法是在编译时确定了,不能多态,也就是不能运行时绑定;
如若成员属性为static则子类和父类公用(如果子类重新声明了则不算公用),改变一个则子类父类都改变;
class a
{
public final function v($vs = null)
{
static $s = "find";
if(!is_null($vs))
$s = $vs;
return $s;
}
}
class b extends a { }
class c extends b { }
$a = new a();
$a->v('a');
$aa = new a();
$aa->v('last a');
$c = new c();
$c->v('c');
$b = new b();
$b->v('b');
echo $a->v()."<br>";
echo $c->v()."<br>";
echo $b->v()."<br>";