следующий пример (PHP)Доступ Родитель класса собственности от ребенка
class Parent
{
protected $_property;
protected $_anotherP;
public function __construct($var)
{
$this->_property = $var;
$this->someMethod(); #Sets $_anotherP
}
protected function someMethod()
...
}
class Child extends Parent
{
protected $parent;
public function __construct($parent)
{
$this->parent = $parent;
}
private function myMethod()
{
return $this->parent->_anotherP; #Note this line
}
}
Я новичок в ООП, и я немного невежественны.
Здесь, чтобы получить доступ к родительскому свойству, я использую экземпляр этого класса, который кажется неправильным: S (тогда не нужно быть потом ребенком). Есть ли простой способ, чтобы я мог синхронизировать родительские свойства с дочерними свойствами и может напрямую обращаться к $ this-> anotherP, не используя $ this-> parent-> anotherP?
да. Вызов родительской :: __ конструкции был тем, что мне нужно: O – shxfee
О, да, это одна из сложных вещей, и я не думал об этом упоминать: если ваш дочерний класс определяет конструктор, PHP не будет вызывать конструктор родительского класса, что означает, что вам придется называть его самостоятельно * (см. примечание на http://fr.php.net/manual/en/language.oop5.decon.php) * –