⊗ppOpIhPrM 31 of 107 menu

Métodos privados en la herencia de POO en PHP

Los métodos privados no se heredan. Esto se hace específicamente para no violar el encapsulamiento. Veamos un ejemplo. Supongamos que tenemos la siguiente clase padre con un método privado:

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

Supongamos que la siguiente clase hereda de la clase padre:

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

Supongamos que la clase hija quiere usar el método privado del padre. PHP no permitirá esto y arrojará un error:

<?php class Student extends User { private $surn; public function setSurn($surn) { $this->surn = $surn; } public function getSurn() { return $this->capeFirst($this->surn); // habrá un error } } ?>

Intente en la clase Employee utilizar el método privado del padre.

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