Praktikum Minggu VI 1 dan 2 Dasar-dasar Object Oriented Programming PHP

dokumen-dokumen yang mirip
OBJECT ORIENTED PROGRAMMING DENGAN PHP. Janitra Panji

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

Pemrograman Berorientasi Objek Dengan PHP5

Pemrograman Web. Pemrograman Berorientasi Objek. 8 Adam Hendra Brata

PEWARISAN. Disusun Oleh: Reza Budiawan. Untuk: Tim Dosen Algoritma & Pemrograman Lanjut

Pemrograman Web. Object Oriented Programming in PHP 5

Pertemuan 11 Object Oriented Program

Pemrograman Berorientasi Obyek. Ramos Somya

KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut:

Encapsulation (Encapsulasi) Minggu 5 Pemrograman Berorientasi Objek Alfa Faridh Suni

BAB II TEORI DAN KONSEP PEMROGRAMAN BERBASIS OBJECT

Praktikum 4 Konsep Inheritance, Polymorphism, dan Encapsulation

Pemrograman Web. Pemrograman Berorientasi Objek. Adam Hendra Brata

Object Oriented Programming (Class, Inheritance, Encapsulation dan Interface)

Object Oriented Programming LOGO

OVERLOADING, CONSTRUCTOR DAN DESTRUCTOR. Dewi Sartika, M.Kom

Class & Object 2. Imam Fahrur Rozi

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

PERTEMUAN 2 PEMOGRAMAN BERORIENTASI OBJEK L/O/G/O

PEMROGRAMAN PHP DASAR

Inheritance (Pewarisan Sifat) Imam Fahrur Rozi

Pemrograman Berorientasi. Inheritance

Kurikulum Qt. { Basic OOP } Chapter 6. Class dan Object

PEMROGRAMAN BERORIENTASI OBJEK KONSEP PBO

subclass class manapun private default protected public package yang sama

STRUKTUR DENGAN ARRAY DAN FUNCTION

Object Oriented Programming 1

Pemrograman Berorientasi. Class dan Obyek 2

Polymorphism. Materi ke-8 Pemrograman Berbasis Objek

Robby Cokro Buwono. Badiyanto, S.Kom.,M.Kom. Sesi 12. Memahami cara membuat aplikasi dasar PHP dengan OOP

Bahasa Pemograman II. Object Oriented Programming

BAB VIII Dasar pemrograman beorientasi object dengan PHP

PEMROGRAMAN BERORIENTASI OBJEK

PEMROGRAMAN JAVA. Yoannita, S.Kom. Class & Method sederhana Konsep Pemrograman Berorientasi Objek. Company LOGO

Diciptakan oleh James Gosling. Resmi diperkenalkan tahun Merupakan bahasa pemrograman berorientasi obyek murni. Pada awalnya hanya mampu

E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom

1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini:

PEWARISAN D E W I S A R T I K A, M. K O M

MODUL 1 PENGENALAN OOP

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

Praktikum. PBO (Kelas K) Oleh : MOHAMMAD SHOLIKIN

Modul II Object Oriented Programming

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK

IKG2I4 / Software Project I

ABSTRACT CLASS DAN INTERFACE

Konsep dan Teknik Menguasai Modern OOP di PHP. Awan Pribadi Basuki CV. LOKOMEDIA

KONSEP OOP: PEWARISAN / INHERITANCE

Inheritance dan Kata Kunci static

PEMROGRAMAN JAVA. Yoannita. Konsep Pemrograman Berorientasi Objek. Company LOGO

Praktikum 3 Konsep Class, Attribute dan Method

Pemrograman Berbasis Objek Inheritance

Pemrograman Berorientasi Obyek. Ramos Somya

Inheritance (Pewarisan) Pengertian dasar inheritance

INHERITANCE AND POLIMORPHISM PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM

Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak

Bahasa Pemrograman 2.

Fakultas Teknologi Informasi UJIAN AKHIR SEMESTER GENAP TAHUN AJARAN 2011/2013

JOBSHEET 8 INHERITANCE (PEWARISAN)

Diciptakan oleh James Gosling. Resmi diperkenalkan tahun Merupakan bahasa pemrograman berorientasi obyek murni. Pada awalnya hanya mampu

Dasar Pemrograman Java. H. Risdiandri Iskandar, SKom,MM 1

PRAKTIKUM I Class dan Obyek

Membuat Toko Online dengan Teknik OOP, MVC, dan AJAX

Pemrograman Berbasis Objek (Polimorfisme)

Enkapsulasi. Praktikum 7

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

Inheritance. Pertemuan 8 Pemrograman Berbasis Obyek

Pemograman Berorientasi Objek. Week 3 Abstrak dan Interface dalam suatu kelas

5/23/12. Inheritance. Pengertian inheritance Deklarasi inheritance Single inheritance Multilevel inheritance Access Control super keyword

MODUL PRAKTIKUM I PEMOGRAMAN BERORIENTASI OBJEK DENGAN PHP

KONSEP Pemrograman Berorientasi Objek KARMILASARI

Modul 8. Pokok Bahasan: Class dan Object Field Metode Properti Deklarasi Objek dan Instantiasi Objek Constructor Event Inheritance

Inheritance. Topik 5/17/2013

Pemrograman Berorientasi Objek / Object Oriented Programming / (OOP) Nur Hasanah, M.Cs

DASAR PEMROGRAMAN. Konsep Pemrograman Berorientasi Objek. Yoannita

MODUL 6. PEMROGRAMAN VISUAL BASIC.NET DENGAN OOP (II) dan STRING

CLASS PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM JOGJAKARTA

MODUL 2 Constructor. Tujuan: Mahasiswa dapat mengenal dan memahami konsep constructor dan overloading constructor

REKAYASA PERANGKAT LUNAK (RPL) Implementasi PL

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LABSHEET ALGORITMA DAN STRUKTUR DATA

Tabel 1. Instruksi untuk menampilkan teks No. Bahasa Pemrograman Instruksi 1. Pascal WRITE ( Bahasa pemrograman itu mudah );

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference ke atribut turunan dari objek? super

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

Pemrograman Web Berbasis Framework. Pertemuan 2 : OOP Dalam Pemrograman Web. Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

Daftar Isi. Daftar Isi... ii MODUL 1 PENGENALAN OOP Pengantar Class Atribut Method This Access Modifier...

Modul Bahasa Pemrograman 1

Pemrograman Lanjut Review Class dan Object PTIIK

Konsep Dasar Pemrograman Berorientasi Objek

Michael Lionardi

Inheritance dan Polimorfisme

KONSEP OOP: PEWARISAN / INHERITANCE

INTERAKSI ANTAR OBJECT

Pengenalan pemrograman berorientasi obyek

Object Oriented Programming (OOP) --Inheritance- Saniati STMIK Teknokrat, Bandar Lampung

MINGGU IV : PEMROGRAMAN BERORIENTASI OBJEK

UNIVERSITAS GUNADARMA

MODUL 3 Inheritance. Tujuan: Mahasiswa dapat mengenal dan memahami konsep inheritance dan cara menerapkan inheritance dengan constructor

Bahasa Pemrograman 2.

PRAKTIKUM OBJECT ORIENTED PROGRAMING

Transkripsi:

Praktikum Minggu VI 1 dan 2 Dasar-dasar Object Oriented Programming PHP 6.1. Tujuan Mahasiswa dapat membuat aplikasi web base dengan menggunakan pendekatan OOP. 6.2. Bahan 1. Dreamweaver 2. Browser 3. PHP 6.3. Teori Saat ini, Object Oriented Programming (OOP) telah menjadi standar dalam dunia pemograman, termasuk PHP. Kali ini akan dibahas tentang Pemrograman Web Base PHP dengan pendekatan Object Oriented Programming. PHP bukan bahasa pemrograman yang murni berbasis objek seperti Java. Konsep OOP dalam PHP pertama kali hadir dalam PHP versi 4. OOP PHP merupakan fitur tambahan. Aplikasi web bisa dibuat dengan PHP tanpa menggunakan pendekatan OOP. 6.3.1. Pemrograman Berbasis Objek Pemrograman Berbasis Objek atau Object Oriented Programming (OOP) adalah paradigma pemrograman dengan menggunakan konsep objek yang memiliki atribut dan prosedur/ fungsi/ method. 6.3.2. Class, Object, Property dan Method Class adalah cetak biru atau blueprint dari object. Class digunakan hanya untuk membuat kerangka dasar. Yang akan dipakai nantinya adalah hasil cetakan dari class, yakni object. Di dalam PHP, penulisan class diawali dengan keyword class, kemudian diikuti dengan nama dari class. Aturan penulisan nama class sama seperti aturan penulisan variabel dalam PHP. Berikut adalah contoh penulisan class dalam PHP : // isi dari class laptop... Property (atau atribut) adalah data yang terdapat dalam sebuah class. Property sebenarnya adalah variabel yang terletak di dalam class. Seluruh aturan dan tipe data yang biasa diinput ke dalam variabel, bisa juga diinput ke dalam property. Aturan tata cara penamaan property sama dengan aturan penamaan variabel. Berikut adalah contoh penulisan class dengan penambahan property:

var $pemilik; var $merk; var $ukuran_layar; // lanjutan isi dari class laptop... Method adalah tindakan yang bisa dilakukan di dalam class. Method pada dasarnya adalah function yang berada di dalam class. Seluruh fungsi dan sifat function bisa diterapkan ke dalam method, seperti argumen/parameter, mengembalikan nilai (dengan keyword return), dan lain-lain. Berikut adalah contoh penulisan class dengan penambahan method : function hidupkan_laptop() { //... isi dari method hidupkan_laptop function matikan_laptop() { //... isi dari method matikan_laptop... //isi dari class laptop Object atau Objek adalah hasil cetak/ instanisasi dari class. Proses mencetak objek dari class ini disebut dengan instansiasi (atau instantiation dalam bahasa inggris). Pada PHP, proses instansiasi dilakukan dengan menggunakan keyword new. Hasil cetakan class akan disimpan dalam variabel untuk selanjutnya digunakan dalam proses program. Sebagai contoh, berikut adalah cara membuat objek laptop_andi dan laptop_anto yang dibuat dari class laptop: //... isi dari class laptop $laptop_andi = new laptop();

6.3.3. Membuat dan Mengakses Objek dalam PHP Istilah Objek dalam OOP, sebenarnya terdiri dari class, property, method dan object. Berikut adalah contoh cara pembuatan objek di dalam PHP: // buat property untuk class laptop var $pemilik; var $merk; var $ukuran_layar; function hidupkan_laptop() { return "Hidupkan Laptop"; function matikan_laptop() { return "Matikan Laptop"; Cara mengakses objek yang dimaksud adalah cara untuk mengakses isi dari sebuah objek, yakni property dan method-nya dengan menggunakan tanda panah ( -> ), berikut adalah revisi contoh class laptop sebelumnya: //contoh 6.1 //buat class laptop // buat property untuk class laptop var $pemilik; var $merk; var $ukuran_layar; function hidupkan_laptop() {

return "Hidupkan Laptop"; function matikan_laptop() { return "Matikan Laptop"; // set property $laptop_anto->pemilik="anto"; $laptop_anto->merk="asus"; $laptop_anto->ukuran_layar="15 inchi"; // tampilkan property echo $laptop_anto->pemilik; echo $laptop_anto->merk; echo $laptop_anto->ukuran_layar; // tampilkan method echo $laptop_anto->hidupkan_laptop(); echo $laptop_anto->matikan_laptop(); Dalam contoh kode di atas, digunakan 1 buah objek yang berasal dari class laptop. Namun pada dasarnya sebuah class bisa digunakan untuk membuat lebih dari satu objek. Setiap objek merupakan bagian terpisah, namun tetap memiliki property dan method yang berasal dari class laptop. Berikut adalah contoh pembuatan beberapa objek dari class laptop: //contoh 6.2 //buat class laptop // buat property untuk class laptop var $pemilik; function hidupkan_laptop() { return "Hidupkan Laptop"; $laptop_andi = new laptop(); $laptop_dina = new laptop();

// set property $laptop_anto->pemilik="anto"; $laptop_andi->pemilik="andi"; $laptop_dina->pemilik="dina"; // tampilkan property echo $laptop_anto->pemilik; // Anto echo $laptop_andi->pemilik; // Andi echo $laptop_dina->pemilik; // Dina 6.3.4. Enkapsulasi Objek (Public, Protected dan Private) Enkapsulasi (encapsulation) adalah sebuah metoda untuk mengatur struktur class (property dan method) dengan cara menyembunyikan alur kerja dari class tersebut. Dengan enkapsulasi, bisa dibuat pembatasan akses kepada property dan method, sehingga hanya property dan method tertentu saja yang bisa diakses dari luar class. Enkapsulasi juga dikenal dengan istilah information hiding. Dengan enkapsulasi, bisa dipilih property dan method apa saja yang boleh diakses, dan mana yang tidak boleh diakses. OOP menyediakan 3 access modifier, yakni Public, Protected dan Private. 1. Public Ketika sebuah property atau method dinyatakan sebagai public, maka seluruh kode program di luar class bisa mengaksesnya, termasuk class turunan. Berikut adalah contoh penulisan public propertydan public method dalam PHP: // contoh 6.3 // buat public property public $pemilik; // buat public method public function hidupkan_laptop() { return "Hidupkan Laptop"; // set property $laptop_anto->pemilik="anto"; // tampilkan property echo $laptop_anto->pemilik; // Anto

// tampilkan method echo $laptop_anto->hidupkan_laptop(); // "Hidupkan Laptop" Jika hak akses property dan method tidak ditulis, maka PHP menganggapnya sebagai public. 2. Protected Jika sebuah property atau method dinyatakan sebagai protected, berarti property atau method tersebut tidak bisa diakses dari luar class, namun bisa diakses oleh class itu sendiri atau turunan class tersebut. Apabila kita mencoba mengakses protected property atau protected method dari luar class, akan menghasilkan error, seperti contoh berikut ini: // contoh 6.4 // buat protected property protected $pemilik; // buat protected method protected function hidupkan_laptop() { return "Hidupkan Laptop"; // set protected property akan menghasilkan error $laptop_anto->pemilik="anto"; // Fatal error: Cannot access protected property laptop::$pemilik // tampilkan protected property akan menghasilkan error echo $laptop_anto->pemilik; // Fatal error: Cannot access protected property laptop::$pemilik // jalankan protected method akan menghasilkan error echo $laptop_anto->hidupkan_laptop(); // Fatal error: Call to protected method laptop::hidupkan_laptop() // from context Walaupun akses level protected tidak bisa diakses dari luar class, namun bisa diakses dari dalam class itu sendiri, berikut adalah contohnya: // contoh 6.5

// buat protected property protected $pemilik="anto"; public function akses_pemilik() { return $this->pemilik; protected function hidupkan_laptop() { return "Hidupkan Laptop"; public function paksa_hidup() { return $this->hidupkan_laptop(); // jalankan method akses_pemilik() echo $laptop_anto->akses_pemilik(); // "Anto" // jalankan method paksa_hidup() echo $laptop_anto->paksa_hidup(); // "Hidupkan Laptop" Selain dari dalam class itu sendiri, property dan method dengan hak akses protected juga bisa diakses dari class turunan (Kita akan membahas tentang penurunan class dalam tutorial lain): // contoh 6.6 // buat class komputer class komputer{ // property dengan hak akses protected protected $jenis_processor = "Intel Core i7-4790 3.6Ghz"; class laptop extends komputer{ public function tampilkan_processor() { return $this->jenis_processor; $laptop_baru = new laptop(); // jalankan method echo $laptop_baru->tampilkan_processor(); // "Intel Core i7-4790 3.6Ghz"

3. Private Jika sebuah property atau method di-set sebagai private, maka satu-satunya yang bisa mengakses adalah class itu sendiri. Class lain tidak bisa mengaksesnya, termasuk class turunan. Sebagai contoh, berikut adalah hasil yang di dapat jika kita mengakses property dan method dengan level private: // contoh 6.7 // buat class komputer class komputer { // property dengan hak akses protected private $jenis_processor = "Intel Core i7-4790 3.6Ghz"; public function tampilkan_processor() { return $this->jenis_processor; class laptop extends komputer{ public function tampilkan_processor() { return $this->jenis_processor; $komputer_baru = new komputer(); $laptop_baru = new laptop(); // jalankan method dari class komputer echo $komputer_baru->tampilkan_processor(); // "Intel Core i7-4790 3.6Ghz" // jalankan method dari class laptop (error) echo $laptop_baru->tampilkan_processor(); // Notice: Undefined property: laptop::$jenis_processor Akses level private sering digunakan untuk menyembunyikan property dan method agar tidak bisa diakses di luar class. 6.3.5. Fungsi Variabel $this dalam Pemrograman Objek Variabel $this adalah sebuah variabel khusus dalam OOP PHP yang digunakan sebagai penunjuk kepada objek, ketika diaksesnya dari dalam class. Dalam manual PHP, $this disebut dengan istilah: pseudo-variable.

Berikut adalah dua class laptop dengan beberapa property dan method yang berbeda. // contoh 6.8 // buat property untuk class laptop public $pemilik="andi"; public function hidupkan_laptop() { return "Hidupkan Laptop $pemilik"; $laptop_baru = new laptop(); echo "1.".$laptop_baru->hidupkan_laptop(); echo "<br>"; //ubah isi property $pemilik pada objek $laptop_baru $laptop_baru->pemilik="arie"; echo "2.".$laptop_baru->hidupkan_laptop(); // buat objek baru dari class laptop dan panggil hidupka echo "<br>"; $laptop_lama = new laptop(); echo "3.".$laptop_lama->hidupkan_laptop(); Bandingkan dengan yang dibawah ini : // contoh 6.9 // buat property untuk class laptop public $pemilik="andi"; public function hidupkan_laptop() { return "Hidupkan Laptop $this->pemilik"; $laptop_baru = new laptop();

echo $laptop_baru->hidupkan_laptop(); // "Hidupkan Laptop Andi"; //ubah isi property $pemilik pada objek $laptop_baru $laptop_baru->pemilik="arie"; echo $laptop_baru->hidupkan_laptop(); // "Hidupkan Laptop Arie"; // buat objek baru dari class laptop dan panggil hidupkan_laptop() $laptop_lama = new laptop(); echo $laptop_lama->hidupkan_laptop(); 6.3.6. Pseudo-Variable $this dalam Objek PHP Dalam contoh berikut, akand dibuat class laptop dengan method yang saling memanggil methodlain menggunakan variabel $this, silahkan anda pahami alur kerja dari class dan objek dibawah ini: // contoh 6.10 // buat property untuk class laptop public $pemilik; public $merk; public function hidupkan_laptop() { return "Hidupkan Laptop $this->merk punya $this->pemilik"; public function matikan_laptop() { return "Matikan Laptop $this->merk punya $this->pemilik"; public function restart_laptop() { $matikan=$this->matikan_laptop(); $hidupkan= $this->hidupkan_laptop(); $restart=$matikan."<br />".$hidupkan; return $restart; // isi property objek $laptop_anto->pemilik="anto"; $laptop_anto->merk="asus"; echo $laptop_anto->hidupkan_laptop();

// hasil: "Hidupkan Laptop Asus punya Anto"; echo $laptop_anto->matikan_laptop(); // hasil: "Matikan Laptop Asus punya Anto"; echo $laptop_anto->restart_laptop(); // hasil: // "Matikan Laptop Asus punya Anto"; // "Hidupkan Laptop Asus punya Anto"; 6.3.7. Method dalam Pemrograman Objek PHP Method pada dasarnya hanyalah function yang berada di dalam sebuah class, maka bisa diberi argumen/parameter ke dalam method tersebut. struktur dasar pembuatan parameter di dalam method PHP: hak_akses nama_method ($argumen1, argumen2, dst...) { //... isi dari method Perhatikan dua contoh berikut : // contoh 6.11 // buat property untuk class laptop private $pemilik="anto"; private $merk="acer"; public function hidupkan_laptop($pemilik,$merk) { return "Hidupkan Laptop $merk punya $pemilik"; public function hidupkan_laptop_anto() { return "Hidupkan Laptop $this->merk punya $this->pemilik"; // buat objek dari class laptop (instansiasi $laptop_andi= new laptop(); echo $laptop_andi->hidupkan_laptop("andi", "Lenovo"); // hasil: "Hidupkan Laptop Lenovo punya Andi"; echo $laptop_andi->hidupkan_laptop_anto(); // hasil: "Hidupkan Laptop Acer punya Anto";

Contoh berikutnya : // contoh 6.12 public function hidupkan_laptop($pemilik="joko",$merk="samsung") { return "Hidupkan Laptop $merk punya $pemilik"; $laptop_andi= new laptop(); echo $laptop_andi->hidupkan_laptop(); // hasil: "Hidupkan Laptop Samsung punya Joko"; echo $laptop_andi->hidupkan_laptop("andi", "Lenovo"); // hasil: "Hidupkan Laptop Lenovo punya Andi"; 6.3.8. Constructor dan Destructor Constructor (bahasa indonesia: konstruktor) adalah method khusus yang akan dijalankan secara otomatis pada saat sebuah objek dibuat (instansiasi), yakni ketika perintah new dijalankan. Constructor biasa digunakan untuk membuat proses awal dalam mempersiapkan objek, seperti memberi nilai awal kepada property, memanggil method internal dan beberapa proses lain yang digunakan untuk mempersiapkan objek. Dalam PHP, constructor dibuat menggunakan method : construct(). Destructor (bahasa indonesia: destruktor) adalah method khusus yang dijalankan secara otomatis pada saat sebuah objek dihapus. Di dalam PHP, seluruh objek secara otomatis dihapus ketika halaman PHP dimana objek itu berada selesai diproses. Tetapi juga dapat dihapus objek secara manual. Destructor biasanya digunakan untuk membersihkan beberapa variabel, atau menjalankan proses tertentu sebelum objek dihapus. Dalam PHP, destructor dibuat menggunakan method : destruct(). Perhatikan dua contoh dibawah ini : // contoh 6.13 private $pemilik = "Andi"; private $merk = "Lenovo"; public function construct(){

echo "Ini berasal dari Constructor Laptop"; public function hidupkan_laptop(){ return "Hidupkan Laptop $this->merk punya $this->pemilik"; public function destruct(){ echo "Ini berasal dari Destructor Laptop"; $laptop_andi= new laptop(); echo $laptop_andi->hidupkan_laptop(); // hapus objek $laptop_andi unset($laptop_andi); echo "Objek Telah Dihancurkan"; Contoh berikutnya constructor yang sering digunakan untuk membuat objek dengan nilai awal: // contoh 6.14 private $pemilik; private $merk; // constructor sebagai pembuat nilai awal public function construct($pemilik, $merk) { $this->pemilik = $pemilik; $this->merk = $merk; public function hidupkan_laptop() { return "Hidupkan Laptop $this->merk punya $this->pemilik"; $laptop_andi= new laptop("andi", "Lenovo"); echo $laptop_andi->hidupkan_laptop();

$laptop_anto= new laptop("anto", "Acer"); echo $laptop_anto->hidupkan_laptop(); Catatan, constructor dan destructor harus memiliki hak akses public. Jika diubah hak akses constructor atau destructor menjadi protected atau private, PHP akan muncul pesan error: 6.3.9. Inheritance (Pewarisan) Inheritance atau Pewarisan/Penurunan adalah konsep pemrograman dimana sebuah class dapat menurunkan property dan method yang dimilikinya kepada class lain. Konsep inheritance digunakan untuk memanfaatkan fitur code reuse untuk menghindari duplikasi kode program. Konsep inheritance membuat sebuah struktur atau hierarchy class dalam kode program. Class yang akan diturunkan bisa disebut sebagai class induk (parent class), super class, atau base class. Sedangkan class yang menerima penurunan bisa disebut sebagai class anak (child class), sub class, derived class atauheir class. Tidak semua property dan method dari class induk akan diturunkan. Property dan method dengan hak akses private, tidak akan diturunkan kepada class anak. Hanya property dan method dengan hak akses protected dan public saja yang bisa diakses dari class anak. Inheritance / penurunan dari sebuah class kepada class lain menggunakan kata kunci: extends, dengan penulisan dasar sebagai berikut: class induk { //...isi class induk class anak extends induk { //... class anak bisa mengakses //... property dan method class induk Contoh : // contoh 6.15 // buat class komputer class komputer { protected function beli_komputer() { return "Beli komputer baru"; // turunkan class komputer ke laptop class laptop extends komputer { protected function beli_laptop() { return "Beli laptop baru";

// turunkan class laptop ke chromebook class chromebook extends laptop { protected function beli_chromebook() { return "Beli chromebook baru"; public function beli_semua(){ $a = $this->beli_komputer(); $b = $this->beli_laptop(); $c = $this->beli_chromebook(); return "$a <br /> $b <br /> $c"; $gadget_baru = new chromebook(); //panggil method objek echo $gadget_baru->beli_semua(); // $gadget_baru->beli_komputer(); // Fatal error: Call to protected method komputer::beli_komputer() 6.4. Praktikum Ketik ulang contoh 6.1 sampai 6.15 dan perhatikan hasilnya. 6.5. Tugas Referensi http://www.duniailkom.com/tutorial-belajar-oop-php-pemrograman-berbasis-objek-php/