Privaat eienskappe by oorerwing in OOP in PHP

Privaat eienskappe word nie geërf nie. Maar 'n afstammeling kan dit manipuleer deur openbare metodes van die ouer. Kom ons kyk prakties. Laat ons die volgende ouerklas hê met 'n privaat eienskap en sy getter en setter:

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

Laat die volgende afstammeling van die ouer erf:

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

Skep 'n objek van die afstammeling:

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

Gebruik die ouer se metode om sy privaat eienskap vas te lê:

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

Gebruik die ouer se metode om sy privaat eienskap te lees:

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

Die volgende ouerklas word gegee:

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

Maak 'n klas Employee wat van hierdie ouer sal erf.

Задание 2

Skep 'n objek van die klas Employee en roep die geërfde setters en getters aan.

Задание 3

Maak die volgende metode in die klas Employee:

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

Oortuig jouself dat die kode van die metode tot 'n fout sal lei.