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

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

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

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

Хай ад бацькі наследуе наступны нашчадак:

<?php class Student extends User { } ?>

Стварым аб'ект нашчадка:

<?php $student = new Student; ?>

Скарыстаемся метадам бацькі, каб запісаць яго прыватную ўласцівасць:

<?php $student->setName('john'); ?>

Скарыстаемся метадам бацькі, каб прачытаць яго прыватную ўласцівасць:

<?php $name = $student->getName(); echo $name; ?>

Дадзены наступны клас-бацька:

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

Зрабіце клас Employee, які будзе наследаваць ад гэтага бацькі.

Стварыце аб'ект класа Employee і выклічце ўспадкаваныя сетэры і гетэры.

У класе Employee зрабіце наступны метад:

<?php public function getFull() { return $this->name . ' ' . $this->surn; } ?>

Пераканайцеся, што код метаду прыведзе да памылкі.

byenru