12
votes

Une sous-classe peut-elle également hériter du constructeur de la classe mère ou chaque classe doit-elle avoir son propre constructeur?

permet de dire que j'ai une classement parent abstrait et une classement enfant. EnfantClass s'étend parentclass. Maintenant, ParentClass a ce beau constructeur:

function __construct($tplFile) {
    $this->$tplFile = $tplFile;
}


0 commentaires

3 Réponses :


12
votes

EnfantClass héritera automatiquement du constructeur.


0 commentaires

0
votes

La réponse aux deux questions est oui .


0 commentaires

19
votes

du manuel PHP:

Remarque: les constructeurs parents ne sont pas appelés implicitement si l'enfant La classe définit un constructeur. Afin d'exécuter un constructeur parent, un Appel au parent :: __ construire () dans le constructeur enfant est requis.


2 commentaires

Merci - cette réponse m'a été utile.


Remarque: Calling Parent :: __ Construction () Ne redirige pas des paramètres. Utilisez ceci: si (func_num_args ()> 0) {$ constructorargs = func_get_args (); call_user_func_array (tableau ($ ceci, 'Parent :: __ construire'), $ constructorargs); } else {parent :: __ construire (); }