დაცული მეთოდები OOP-ში PHP-ში
PHP მხარს უჭერს დაცულ მეთოდებს
მოდიფიკატორის protected საშუალებით.
ასეთი მეთოდები მემკვიდრეობით მიიღება, მაგრამ არ ჩანს
კლასის გარეთ.
მოდით ვნახოთ, როგორ მუშაობს ეს. დავწეროთ მშობელი კლასი დაცული მეთოდით:
<?php
class User {
public function setName($name) {
$this->name = $name;
}
public function getName() {
return $this->capeFirst($this->name);
}
protected function capeFirst($str) {
return ucfirst($str);
}
}
?>
გამოვიყენოთ ეს დაცული მეთოდი შვილობილ კლასში:
<?php
class Student extends User {
public function setSurn($surn) {
$this->surn = $surn;
}
public function getSurn() {
return $this->capeFirst($this->surn);
}
}
?>
შემდეგ კოდში გახადეთ დამხმარე მეთოდი დაცულად:
<?php
class User {
public function setName($name) {
if ($this->notEmpty($name)) {
$this->name = $name;
}
}
public function getName() {
return $this->name;
}
public function notEmpty($str) {
return strlen($str) > 0;
}
}
class Employee extends User {
public function setSurn($surn) {
if ($this->notEmpty($surn)) {
$this->surn = $surn;
}
}
public function getSurn() {
return $this->surn;
}
}
?>