⊗ppOpIhPrM 31 of 107 menu

Privát metódusok öröklődéskor az OOP-ban PHP-ben

A privát metódusok nem öröklődnek. Ez szándékosan van így, hogy ne sérüljön az encapsuláció. Nézzünk egy példát. Tegyük fel, hogy a következő szülő osztályunk van privát metódussal:

<?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); } } ?>

Tegyük fel, hogy a szülő osztályból örököl a következő osztály:

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

Tegyük fel, hogy az utód ki szeretné használni a szülő privát metódusát. A PHP ezt nem engedi, és hibát jelez:

<?php class Student extends User { private $surn; public function setSurn($surn) { $this->surn = $surn; } public function getSurn() { return $this->capeFirst($this->surn); // hiba történik } } ?>

Próbálja meg az Employee osztályban használni a szülő privát metódusát.

Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás