为什么传递给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 的配额。