PHPде ООПде ата-эне классынын методуна кайра жазуу

Тууган класс ата-энесинин методуна атташ метод түзүү менен кайра жаза алат. Келгиле, мисалды карап көрөлү. Бизде төмөнкүдөй ата-эне классты болсун:

php<?php
  class User {
    private $name;
    
    public function setName($name) {
      $this->name = $name;
    }
    public function getName() {
      return $this->name;
    }
  }
?>

Келгиле, тууган класста атташ метод түзөлү:

php<?php
  class Student extends User {
    public function setName($name) {
      
    }
  }
?>

Адатта, ата-эне методуна кайра жаздыруу ошол методдун иш-аракетин өзгөртүү же толуктоо үчүн керек болот. Келгиле, биздин учурда аттын узундугун текшерүүнү кошолу:

php<?php
  class Student extends User {
    public function setName($name) {
      if (strlen($name) > 0) {
        $this->name = $name;
      } else {
        echo 'студенттин аты катасы';
      }
    }
  }
?>

Келгиле, так кайра жазылган метод чыкканына ишенели. Башында тууган класстын объектисин түзөлү:

php<?php
  $student = new Student;
?>

Эми биздин методду чакыралы, ага туура маани берүү менен:

php<?php
  $student->setName('джон');
?>

Эми методду чакыралы, ага туура эмес маани берүү менен. Натыйжада чыгарылган исключение көрөбүз:

php<?php
  $student->setName(''); // ката
?>
Задание 1

User класстында жаштын геттери жана сеттерин жасаңыз.

Задание 2

Employee класстында жаштын сеттерине кайра жазыңыз жана ага жаштын 18дон 65ка чейин экендигин текшерүүнү салыңыз.