Objek dalam oop (object orinted programing) merupakan terdiri dari class, property method dan object. Istilah tersebut sudah gua bahas di pembahasan sebelumnya. gua akan memberikan contoh cara pembuatan object dalam PHP.
<?php //buat class motor class Motor{ // buat property untuk class motor var $merek_motor; var $cc_motor; var $pemilik; // buat method untuk class motor function hidup_motor() { return "hidupkan leptop"; } funtion matikan_motor() { return "matikan motor"; } } //buat objek class motor (instansiasi) $motor_rokib = new Motor(); ?>
Dalam kode diatas, kita telah membuat sebuah class dengan nama laptop, lengkap dengan property dan menthod-nya. Kemudian saya membuat 1 buah objek dari class laptop dengan nama $laptop_anto pada baris terakhir.
Walaupun dalam kode diatas kita telah membuat objek, objek tersebut belum menampilkan apa-apa, karena class laptop belum berisi data apapun. Kita akan segera mempelajari cara mengakses ‘isi’ dari class dalam PHP.
Kode diatas, gua telah membuat sebuah class dengan nama motor, lengkap dengan method dan property-nya, dan membuat 1 objek dari class motor dengan nama $motor_rokib pada baris akhir. walapun kode diatas gua membuat objek tapi aobjek tersebut belum menampilkan apa-apa, karna class motor belum berisi data apapun. gua akan ngejelasin cara mengisi class dalam php.
Abstract Class dan Abstract Method dalam object oriented
Abstrak class merupakan sebuah class yang tidak dapat di instansiasi (tidak biasa di buat menjadi objek) dan berperan sebagai kerangka dasar pada setiap turunannya. Di dalam abstrak class pasti mempunyai abstrak metod.
Abstrak method merupakan metod dasar yang di implementasikan oleh child class (class anak).Abstak method di isi dengan signatur tanpa isi dari method. Signaturdari sebuah method merupakan bagian yang terdiri dari method dan parameternya.Yang akan gua contoh kan disini adalah membuat abstrak class motor Cara menulis abstrak class dengan PHP
<php abstract_class motor{ //isi dari class motor } ?>
Membuat abstract class kita tinggal menambahkan keyword abstract sebelum
nama class. Sebuah class dapat memiliki property dan method seperti class
lainnya (normal), abastract class juga bisa di isi dengan abstract method.
Cara menulis abstrak method dengan PHP
Abstract method tidak perlu membuat isi sebuah method, tetapi hanya signature.
Signatur terdiri dari method dan parameternya.contohnya sebagai berikut :
abstract public function lihat_motor;//tanpa parameter abstract public function lihat_motor($merek);//dengan parameter
Abstract method tidak perlu membuat isi dari method dan abstract method
harus di dalam abstract class. Gua akan berikan contoh abstract class dan
abstract method, contoh sebagai berikut :
<?php abstract class function motor{ abstract public function lihat_motor($merek); } ?>
Abstract class tidak bisa di instansasikan.
Abstract class digunakan hanya sebagai “blue print” untuk class lain sesuai
dengan sifatnya tidak bisa digunakan langsung. Contohnya sebagai berikut:
<?php abstract class motor{ abstract public function lihat_motor($merek); } $new_motor = new motor(); ?>
Jika di jalankan maka script akan erorr, karna diatas script mencoba membuat
object class dari abstract class. Untuk menggunakan class motor harus terlebih
dahulu menurunkan ke class lain.
Abstract Class Bisa Memiliki Property dan Method “normal”.
Seperti yang telah gua jelasin sebelumnya abstract class bisa memiliki property
dan method “normal” sperti class biasa. Tapi hanya bisa diaksess oleh class
turunan. Contohnya sebagai berikut :
<?php //membuat abstrak class terlebih dahulu abstract class motor{ //membuat abstract method abstract public function lihat_motor($merek); //membuat method public function hidupkan_motor(){ echo “Hidupkan Motor”; } } ?>
Implementasi Class Turunan Dalam Abstrack Method
Abstract class akan diturunkan ke class dengan catatan class tersebut harus
membuat ulang sluruh abstract method yang terdapat dari abstract class dan
harus sesuai signature nya, contohnya sebagai berikut :
<?php //membuat abstrak class terlebih dahulu abstract class motor{ //membuat abstract method abstract public function lihat_motor($merek); } class mobil extends motor{ public function nyalakan_motor(){ Return “Motor Menyala”; } } ?>
Ketika dijalankan pasti error “Fatal eror bla bla bla”, karena script diatas gua menurunkan class motorke class mobil. Karna class motor merupakan abstrack
method lihat_motor().maka di class mobil akan membuat ulang method tersebut.
Kita coba perbaiki script di atas hayu cekidot.
<?php //membuat abstrak class terlebih dahulu abstract class motor{ //membuat abstract method abstract public function lihat_motor($merek); } class mobil extends motor{ public function lihat_motor(){ return “Motor Menyala”; } //buat method normal public function nama_mobil(){ return ‘avanza mobil rakyat indonesia’ } } //membuat object dari class mobil new_mobil = new mobil(); echo $new_mobil = lihat_motor(); //lihat nama mobil </br> echo $new_mobil->nama_mobil(); ?>
Dalam script di atas method lihat_motor di implementasikan dalam class mobil.
Fungsi dari abstract method yaitu memaksa setiap turunan untuk memiliki method lihat_mobil().Abstract method mengimplementasinya harus sesuai dengan signaturnya, yakni nama method beserta parameter.
Cara abstract class memiliki static method
Abstract class merupakan salah satu class yang mempunyai fitur khusus
yaitu bisa memiliki static method. Berikut ini gua kasih contohnya :
<?php //buat terlebih dahulu abstract class abstract class motor{ //buat abstract methodnya abstract public function merk_motor($nama_motor); public static function harga_motor(){ echo “Harga 10.000”; } } echo motor::harga_motor(); ?>
Fungsi Abstaract Class dan Abstract Method
Abstract class dan Abstract method mempunyai fungsi membuat krangka untuk
class dibawahnya seperti yang saya contohkan di script di atas. Jika class motor
maka methodnya yaitu merk_motor.Gua akan coba contohkan script yang
sederhana yang dimana script abstract_methodnya hanya
1. Contohnya sebagai berikut :
<?php //buat abstract class seperti dahulu. abstract class motor{ abstract public function nama_motor(); abstract public function jenis_motor(); abstract public function harga_motor(); abstract public function cc_motor(); } class mobil extends motor{ //isi dengan class mobil } class pesawat extends motor{ //isi dengan class pesawat } class kapal extends motor{ //isi dengan class kapal } ?>
Motor merupakan class abstract
Cukup Sekian dulu tutorial kali ini semoga bermanfaat dan bisa memahaminya dengan baik. Terima kasih dan wasalamualikum
0 Response to "Membuat Object, Abstract Class dan Abstract Method dalam PHP OOP (object oriented programing)"
Posting Komentar