Konstruktor by oorerwing in OOP in PHP

Met oorerwing kan jy die ouer se konstruktor ooraf. Kom ons kyk na 'n voorbeeld. Gestel ons het die volgende ouerklas:

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

Gestel die volgende klas erf af van die ouerklas:

php<?php
  class Student extends User {
    
  }
?>

Gestel ons wil in die afstammelingklas die konstruktor uitbrei deur bykomende parameters by te voeg:

php<?php
  class Student extends User {
    private $year;
    
    public function __construct($name, $surn, $year) {
      
    }
  }
?>

In hierdie geval moet ons noodwendig die ouer se konstruktor as eerste reël oproep met parent::__construct():

php<?php
  class Student extends User {
    private $year;
    
    public function __construct($name, $surn, $year) {
      parent::__construct($name, $surn);
    }
  }
?>

Die opdrag parent::__construct() is in wese die ouer se konstruktor. Laat ons dus die vereiste parameters daaraan oordra:

php<?php
  class Student extends User {
    private $year;
    
    public function __construct($name, $surn, $year) {
      parent::__construct($name, $surn);
    }
  }
?>

Laat ons nou die studiejaar in die afstammeling in sy eie eiendom van die afstammeling aanmeld:

php<?php
  class Student extends User {
    private $year;
    
    public function __construct($name, $surn, $year) {
      parent::__construct($name, $surn);
      $this->year = $year;
    }
  }
?>

Kom ons maak 'n getter vir die studiejaar:

php<?php
  class Student extends User {
    private $year;
    
    public function __construct($name, $surn, $year) {
      parent::__construct($name, $surn);
      $this->year = $year;
    }
    
    public function getYear() {
      return $this->year;
    }
  }
?>
Задание 1

Gestel klas Employee erf af van klas User uit hierdie les.

Задание 2

Herdefinieer in klas Employee die ouer se konstruktor deur 'n parameter met ouderdom en salaris by te voeg.

Задание 3

Maak getters vir ouderdom en salaris.