Properti Privat dalam Pewarisan OOP di PHP
Properti privat tidak diwariskan. Namun, kelas turunan dapat memanipulasinya melalui metode publik dari induknya. Mari kita lihat dalam praktiknya. Misalkan kita memiliki kelas induk berikut dengan properti privat serta getter dan setternya:
<?php
class User {
private $name;
public function setName($name) {
$this->name = $name;
}
public function getName() {
return $this->name;
}
}
?>
Misalkan dari induknya diwarisi oleh kelas turunan berikut:
<?php
class Student extends User {
}
?>
Mari buat objek dari kelas turunan:
<?php
$student = new Student;
?>
Mari gunakan metode dari induk untuk menulis ke properti privatnya:
<?php
$student->setName('john');
?>
Mari gunakan metode dari induk untuk membaca properti privatnya:
<?php
$name = $student->getName();
echo $name;
?>
Diberikan kelas induk berikut:
<?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;
}
}
?>
Buatlah kelas Employee,
yang akan mewarisi
dari induk ini.
Buat objek dari kelas Employee
dan panggil setter serta getter
yang diwarisi.
Dalam kelas Employee buatlah
metode berikut:
<?php
public function getFull() {
return $this->name . ' ' . $this->surn;
}
?>
Pastikan kode metode tersebut menyebabkan error.