Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗ppOpIhCn 30 of 107 menu
◀ ▶

Constructor en herencia en POO en PHP

En la herencia se puede sobrescribir el constructor del padre. Veamos un ejemplo. Supongamos que tenemos la siguiente clase padre:

<?php class User { private $name; private $surn; public function __construct($name, $surn) { $this->name = $name; $this->surn = $surn; } public function getName() { return $this->name; } public function getSurn() { return $this->surn; } } ?>

Supongamos que de la clase padre hereda la siguiente clase:

<?php class Student extends User { } ?>

Supongamos que queremos en la clase hija ampliar el constructor, añadiendo parámetros adicionales:

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { } } ?>

En este caso necesitamos obligatoriamente llamar en la primera línea al constructor del padre mediante parent::__construct():

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { parent::__construct($name, $surn); } } ?>

El comando parent::__construct() en esencia es el constructor del padre. Por lo tanto pasemos a él los parámetros requeridos:

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { parent::__construct($name, $surn); } } ?>

Ahora en el hijo el año de estudio lo escribimos en su propia propiedad del hijo:

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { parent::__construct($name, $surn); $this->year = $year; } } ?>

Hagamos un getter para el año de estudio:

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { parent::__construct($name, $surn); $this->year = $year; } public function getYear() { return $this->year; } } ?>

Supongamos que la clase Employee hereda de la clase User de esta lección.

Sobrescriba en la clase Employee el constructor del padre, añadiéndole parámetros con la edad y el salario.

Haga getters para la edad y el salario.

← →
↑
Español▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar