⊗ppOpIhPrM 31 of 107 menu

OOP-də PHP-də irsidə private metodlar

Private metodlar irs olunmur. Bu, inkapsulyasiyanı pozmamaq üçün xüsusi olaraq edilib. Nümunəyə baxaq. Tutaq ki, aşağıdakı valideyn klasımız var private metodla:

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

Tutaq ki, valideyn klasından aşağıdakı klas irs alır:

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

Tutaq ki, nəsil valideynin private metodundan istifadə etmək istəyir. PHP buna icazə verməyəcək və səhv verəcək:

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

Employee klasında valideynin private metodundan istifadə etməyə çalışın.

azbydeenesfrkakkptruuz