Προστατευμένες Ιδιότητες στην ΑΟΠ στην 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;
      }
    }
  }
?>