使用$this或 parent:: 来调用继承的方法?
2022-08-30 20:49:42
这不是一个真正的问题,更像是我的好奇心,但作为一个例子,假设我有一个php类:
class baseTestMain
{
protected function testFunction()
{
echo 'baseTestMain says hi';
}
}
以及从上面的该类扩展的另一个类:
class aSubClass extends baseTestMain
{
public function doingSomething()
{
parent::testFunction();
//someextrastuffhere
}
}
通常,当我想在子类中定义新方法时调用父方法时,我会执行上述操作 - 但是您也可以使用,并且操作将是相同的。parent::methodnamehere()
parent::
$this->methodname()
class aSubClass extends baseTestMain
{
public function doingSomething()
{
$this->testFunction();
//someextrastuffhere
}
}
所以我要问的是,我应该使用还是使用?还是我错过了它的差异?如果没有,您的偏好或首选方法是什么?parent::testFunction();
$this->testFunction();
请注意,我没有在子类中覆盖或扩展该函数,实质上实现是从父级继承的。