PHP да ООПда гиёҳланган хусусиятлар

PHP ҳам гиёҳланган хусусиятларни қўллайди. Улар ҳам protected модификатори ёрдамида эълон қилинади. Бундай хусусиятлар мерос қолинади ва авлод синфларида дастурлаши мумкин.

Ўзаро синф яратайлик ёшини ўз ичига олган гиёҳланган хусусият билан:

php<?php
  class User {
    protected $age;
    
    public function setAge($age) {
      $this->age = $age;
    }
    public function getAge() {
      return $this->age;
    }
  }
?>

Авлод синфида усул яратамиз, ёшни биттага оширадиган:

php<?php
  class Student extends User {
    public function incAge() {
      $this->age++;
    }
  }
?>
Задание 1

Куйидаги кодни гиёҳланган хусусият орқали қайта ёзинг:

php<?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;
      }
    }
  }
?>