Beskermde metodes in OOP in PHP
PHP ondersteun beskermde metodes
deur die gebruik van die modifiseerder protected.
Sulke metodes word geërf, maar is nie sigbaar
van buite die klas nie.
Kom ons kyk hoe dit werk. Laat ons 'n ouerklas skryf met 'n beskermde metode:
<?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);
}
}
?>
Laat ons hierdie beskermde metode gebruik in 'n afgeleide klas:
<?php
class Student extends User {
public function setSurn($surn) {
$this->surn = $surn;
}
public function getSurn() {
return $this->capeFirst($this->surn);
}
}
?>
Maak die hulpmetode beskermd in die volgende kode:
<?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;
}
}
?>