⊗ppOpIhPrM 31 of 107 menu

Privātās metodes mantojumā OOP PHP

Privātās metodes netiek mantotas. Tas ir izdarīts ar nolūku, lai nepārkāptu inkapsulāciju. Apskatīsim piemērā. Pieņemsim, ka mums ir šāda vecāku klase ar privātu metodi:

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

Pieņemsim, ka no vecāku klases manto šāda klase:

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

Pieņemsim, ka pēctecis vēlas izmantot vecāku privāto metodi. PHP to nepieļaus un izmestīs kļūdu:

<?php class Student extends User { private $surn; public function setSurn($surn) { $this->surn = $surn; } public function getSurn() { return $this->capeFirst($this->surn); // radīsies kļūda } } ?>

Mēģiniet klasē Employee izmantot vecāku privāto metodi.

Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt