Не проблема, скорее как любопытство с моей стороны, а как пример, скажем, у меня есть класс 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();
? или есть ли разница в том, что я пропустил? Если нет, то каковы ваши предпочтения или предпочтительный метод?
Заметьте, что я не переопределяю или не расширяю эту функцию в подклассе, по существу реализация переносится из родительского.