Apa itu OOP?
OOP, atau Object-Oriented Programming, adalah paradigma pemrograman yang berorientasi objek. Dalam konteks PHP, OOP adalah metode pemrograman yang lebih berorientasi pada objek
Poin – Poin Penting Tentang OOP dalam PHP
- Objek dan Kelas
Dalam OOP, kita membuat objek, yang merupakan instance dari kelas. Kelas adalah blueprint atau template dari objek dan mendefinisikan properti dan metode yang akan dimiliki oleh objek. - Properti dan Metode
Properti adalah variabel yang ada dalam kelas, sementara metode adalah fungsi yang ada dalam kelas. - Enkapsulasi
Enkapsulasi adalah konsep di mana data (properti) dan metode dipaket dalam satu unit (kelas). Ini membantu menyembunyikan detail internal dari suatu objek dan hanya mengekspos apa yang diperlukan. - Pewarisan
Pewarisan memungkinkan kita untuk mendefinisikan kelas baru berdasarkan kelas yang sudah ada sebelumnya. Kelas baru ini akan mewarisi semua properti dan metode dari kelas induknya, dan juga dapat menambahkan properti dan metode baru. - Polimorfisme
konsep di mana suatu metode dapat memiliki perilaku yang berbeda di kelas yang berbeda.
Contoh Penerapan Class,Object,Property,Method, Inheritance
- Class
<?php
class Mobil {
}
?>
- Object
<?php
class Mobil {
}
$mobil1 = new Mobil();
$mobil2 = new Mobil();
?>
- Property
<?php
class Mobil {
public $merk;
public $warna;
}
$mobil1 = new Mobil();
$mobil1->merk = "Toyota";
$mobil1->warna = "Merah";
?>
- Method
<?php
class Mobil {
public $merk;
public $warna;
public function tampilkan_merk() {
return $this->merk;
}
public function tampilkan_warna() {
return $this->warna;
}
}
$mobil1 = new Mobil();
$mobil1->merk = "Toyota";
$mobil1->warna = "Merah";
echo $mobil1->tampilkan_merk(); // Output: Toyota
echo $mobil1->tampilkan_warna(); // Output: Merah
?>
- Inheritance
<?php
class Kendaraan {
public $jenis;
public $roda;
public function __construct($jenis, $roda) {
$this->jenis = $jenis;
$this->roda = $roda;
}
public function info() {
echo "Jenis: " . $this->jenis . "<br>";
echo "Jumlah Roda: " . $this->roda . "<br>";
}
}
class Mobil extends Kendaraan {
public $merek;
public $model;
public function __construct($jenis, $roda, $merek, $model) {
parent::__construct($jenis, $roda);
$this->merek = $merek;
$this->model = $model;
}
public function infoMobil() {
echo "Merek: " . $this->merek . "<br>";
echo "Model: " . $this->model . "<br>";
}
}
$mobil_saya = new Mobil("Mobil", 4, "Toyota", "Camry");
$mobil_saya->info();
$mobil_saya->infoMobil();
?>
Perbedaaan antara Construct dan Destruct
- Construct
Metode yang dijalankan pertama kali saat sebuah kelas dijalankan. Jadi, jika kita menjalankan atau menginstansiasi sebuah kelas, dan jika ada metode atau fungsi construct di dalamnya, maka yang pertama kali dijalankan adalah metode construct ini.
Contoh :
<?php
class nama_class {
function __construct() {
//isi fungsi construct
}
}
?>
- Destruct
metode yang terakhir dijalankan setelah semua metode di kelasnya selesai dijalankan1. Jadi, method destruct adalah kebalikan dari method construct1. Destruct dijalankan atau dipanggil secara otomatis ketika objek dihancurkan atau ketika script berakhir
Contoh :
<?php
class nama_class {
function __destruct() {
//isi fungsi destruct
}
}
?>