Petunjuk:
RUN di dalam editor untuk menjalankan program.<?php
class Manusia {
public $nama, $alamat, $umur;
public function __construct($nama, $alamat, $umur) {
$this->nama = $nama;
$this->alamat = $alamat;
$this->umur = $umur;
}
public function perkenalan() {
echo "Halo, nama saya {$this->nama}, saya berumur {$this->umur} tahun dan tinggal di {$this->alamat}.<br>";
}
}
class Pekerja extends Manusia {
public $pekerjaan, $gaji;
public function __construct($nama, $alamat, $umur, $pekerjaan, $gaji) {
parent::__construct($nama, $alamat, $umur);
$this->pekerjaan = $pekerjaan;
$this->gaji = $gaji;
}
public function infoPekerjaan() {
echo "{$this->nama} bekerja sebagai {$this->pekerjaan} dengan gaji sebesar Rp.{$this->gaji}.<br>";
}
}
$pekerja1 = new Pekerja("Andi", "Jakarta", 30, "Programmer", 10000000);
$pekerja1->perkenalan();
$pekerja1->infoPekerjaan();
?>
Class Manusia memiliki property $nama, $alamat, dan $umur serta method perkenalan(). Class Pekerja mewarisi class Manusia menggunakan extends dan menambahkan property $pekerjaan serta $gaji. Method perkenalan() diwarisi dari Manusia, sementara method infoPekerjaan() ditambahkan di Pekerja. Constructor di Pekerja memanggil constructor Manusia menggunakan parent::__construct() agar nilai dari class induk tetap terinisialisasi.