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 {
    
  }
?>

Туған кластың нысанын жасайық:

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

Оның жеке қасиетін жазу үшін ата-ана классының әдісін қолданайық:

php<?php
  $student->setName('john');
?>

Оның жеке қасиетін оқу үшін ата-ана классының әдісін қолданайық:

php<?php
  $name = $student->getName();
  echo $name;
?>
Задание 1

Келесі ата-ана классы берілген:

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

Employee класын жасаңыз, ол осы ата-анадан мұраға алады.

Задание 2

Employee класының нысанын жасаңыз және мұраланған сеттерлер мен геттерлерді шақырыңыз.

Задание 3

Employee класында келесі әдісті жасаңыз:

php<?php
  public function getFull() {
    return $this->name . ' ' . $this->surn;
  }
?>

Әдістің коды қатеге әкелетініне көз жеткізіңіз.