Metode Privat dalam Pewarisan di OOP PHP

Metode privat tidak diwariskan. Ini sengaja dilakukan agar tidak melanggar enkapsulasi. Mari kita lihat contohnya. Misalkan kita memiliki kelas induk berikut dengan metode privat:

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

Misalkan kelas berikut mewarisi dari kelas induk:

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

Misalkan kelas turunan ingin menggunakan metode privat dari induk. PHP tidak akan mengizinkannya dan akan menampilkan error:

php<?php
  class Student extends User {
    private $surn;
    
    public function setSurn($surn) {
      $this->surn = $surn;
    }
    public function getSurn() {
      return $this->capeFirst($this->surn); // akan error
    }
  }
?>
Задание 1

Cobalah di kelas Employee untuk menggunakan metode privat induk.