АКЦЫЯ: бясплатныя месячныя курсы па стварэнні сайтаў
на выбар: вёрстка, JavaScript, PHP, Python або фрэймворкі. Сёння апошні дзень для запісу! Націскай!
⊗ppOpIhPrM 31 of 107 menu

Прыватныя метады пры наследаванні ў ААП у PHP

Прыватныя метады не наследуюцца. Гэта зроблена спецыяльна, каб не парушаць інкапсуляцыю. Давайце паглядзім на прыкладзе. Хай у нас ёсць наступны бацькоўскі клас з прыватным метадам:

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

Хай ад бацькоўскага класа наследуе наступны клас:

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

Хай нашчадак хоча скарыстацца прыватным метадам бацькі. PHP гэта не дазволіць і выдасць памылку:

<?php class Student extends User { private $surn; public function setSurn($surn) { $this->surn = $surn; } public function getSurn() { return $this->capeFirst($this->surn); // будзе памылка } } ?>

Паспрабуйце ў класе Employee скарыстацца прыватным метадам бацькі.

byenru