Beschermde methoden in OOP in PHP
PHP ondersteunt beschermde methoden
met behulp van de modifier protected.
Dergelijke methoden worden geërfd, maar zijn niet zichtbaar
van buiten de klas.
Laten we eens kijken hoe dit werkt. Laten we een ouderklasse schrijven met een beschermde methode:
<?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);
}
}
?>
Laten we deze beschermde methode gebruiken in een subklasse:
<?php
class Student extends User {
public function setSurn($surn) {
$this->surn = $surn;
}
public function getSurn() {
return $this->capeFirst($this->surn);
}
}
?>
Maak de hulpmethode beschermd in de volgende code:
<?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;
}
}
?>