Propriedades protegidas em OOP no PHP
O PHP também suporta propriedades protegidas.
Elas também são declaradas usando o modificador protected.
Tais propriedades são herdadas e acessíveis
nas classes filhas.
Vamos fazer uma classe pai com uma propriedade protegida contendo a idade:
<?php
class User {
protected $age;
public function setAge($age) {
$this->age = $age;
}
public function getAge() {
return $this->age;
}
}
?>
Na classe filha, vamos fazer um método que aumenta a idade em um:
<?php
class Student extends User {
public function incAge() {
$this->age++;
}
}
?>
Reescreva o seguinte código usando uma propriedade protegida:
<?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;
}
}
}
?>