php类继承的问题
本文介绍了php类继承的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
class A
{
public function run()
{
$this->say();
}
}
class B extends A
{
protected function say()
{
echo 'B-say';
}
}
$b = new B();
$b->run();
//结果 输出B-say
如果把say换成private就不行了
报错 PHP Fatal error: Call to private method B::say() from context 'A'
意思是A访问不了B的私有方法。那为什么protected就行呢,protected不应该也不行的吗?A是B的父类并不是子类。
解决方案
自己找到问题所在了。父类可以访问子类 protected 受保护的方法
这篇关于php类继承的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文