⊗ppOpIhPrP 32 of 107 menu

Propiedades privadas en la herencia de POO en PHP

Las propiedades privadas no se heredan. Pero la clase hija puede manipularlas a través de los métodos públicos del padre. Veámoslo en la práctica. Supongamos que tenemos la siguiente clase padre con una propiedad privada y su getter y setter:

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

Supongamos que de la clase padre hereda la siguiente clase hija:

<?php class Student extends User { } ?>

Creemos un objeto de la clase hija:

<?php $student = new Student; ?>

Utilicemos el método del padre para escribir su propiedad privada:

<?php $student->setName('john'); ?>

Utilicemos el método del padre para leer su propiedad privada:

<?php $name = $student->getName(); echo $name; ?>

Tenemos la siguiente clase padre:

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

Crea la clase Employee, que herede de este padre.

Crea un objeto de la clase Employee y llama a los setters y getters heredados.

En la clase Employee haz el siguiente método:

<?php public function getFull() { return $this->name . ' ' . $this->surn; } ?>

Comprueba que el código del método lleva a un error.

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