【发布时间】:2013-11-16 18:23:57
【问题描述】:
为什么传递给Professeur的父方法getHC()引用父(Enseignant)的$this->quota而不是子的$this->quota。
abstract class Enseignant {
private $quota; //empty
public function __construct($nom, $nbHeures)[...]
public function getHC(){
return $this->nbHeures - $this->quota; //Ici le problème
}
abstract protected function setQuota($q);
}
我需要 $this->nbHeures - $this->quota 传递给 Professeur
class Professeur extends Enseignant {
const QUOTA = 192;
public function __construct($nom, $nbHeures) {
parent::__construct($nom, $nbHeures);
$this->setQuota(self::QUOTA);
}
protected function setQuota($q) {
$this->quota = $q;
}
}
并使用教授的配额,而不是 Enseignant 的配额。
【问题讨论】:
-
$e = new Professeur("Charles", 292);回声 $e->getHC();应该给我 100 而不是 292...
标签: php oop inheritance methods