Proprietăți protejate în OOP în PHP
PHP suportă și proprietăți protejate.
Acestea sunt declarate și ele cu modificatorul protected.
Astfel de proprietăți sunt moștenite și accesibile
în clasele descendente.
Să facem o clasă părinte cu o proprietate protejată care conține vârsta:
<?php
class User {
protected $age;
public function setAge($age) {
$this->age = $age;
}
public function getAge() {
return $this->age;
}
}
?>
În clasa descendentă să facem o metodă, care mărește vârsta cu unu:
<?php
class Student extends User {
public function incAge() {
$this->age++;
}
}
?>
Rescrieți următorul cod folosind o proprietate protejată:
<?php
class User {
private $name;
public function setName($name) {
$this->name = $name;
}
public function getName() {
return $this->name;
}
}
class Employee extends User {
public function setName($name) {
if (strlen($name) > 0) {
$this->name = $name;
}
}
}
?>