Tutorial Belajar PHP Part 38 – Memahami Konsep Interface di PHP
Selamat datang di tutorial warungbelajar, melanjutkan pembahasan mengenai seri tutorial PHP, dalam tutorial ini kita akan belajar mengenai Interface dalam PHP.
Seperti yang telah kita bahas sebelumnya bahwa bahasa pemrograman PHP sudah menggunakan konsep pemrograman berbasis object, Karena itu anda dapat menggunakan fitur Interface didalam PHP tapi sebenarnya apa sih interface itu ?
Pengertian Interface
Interface adalah sebuah class yang seluruh methodnya adalah abstract method, karena seluruh methodnya adalah abstract method sehingga interface perlu diimplementasikan oleh child class.
Secara konsep Interface memiliki kemiripan dengan abstract class, untuk teman – teman yang belum mengenal istilah abstract class, anda bisa membaca tutorial kita sebelumnya mengenai abstract class pada link berikut Memahami Fungsi Abstract Class
Perbedaan yang paling terlihat antara interface dan abstract class adalah penggunaan keyword saat class diimplementasikan di child class, jika pada abstract class menggunakan perintah extends, maka pada interface menggunakan perintah implements
Agar anda tidak bingung silahkan perhatikan skrip dibawah ini :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
<?php interface KendaraanInterface{ public function get_bahan_bakar(); } class bus implements KendaraanInterface{ public function get_bahan_bakar() { return 'Solar'; } } class pesawat implements KendaraanInterface{ public function get_bahan_bakar() { return 'Avtur'; } } class kapal implements KendaraanInterface{ public function get_bahan_bakar() { return 'Solar'; } } ?> |
- Pada skrip diatas kita membuat interface dengan nama KendaraanInterface, pada interface tersebut kita memiliki 1 abstract method dengan nama get_bahan_bakar()
- Berikutnya kita memiliki 3 class yang mengimplementasikan interface KendaraanInterface yaitu class bus, pesawat, dan kapal, karena hal itu pada class bus, pesawat, dan kapal diharuskan membuat method get_bahan_bakar().
Interface dapat digunakan bersamaan dengan abstract class
Tidak hanya itu, anda juga dapat menggabungkan penggunaan interface dan abstract class, perhatikan contoh skrip dibawah ini :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
<?php interface KendaraanInterface{ public function get_bahan_bakar(); } abstract class Kendaraan { private $jenis; public function set_bahan_bakar($jenis){ $this->jenis = $jenis; } public function get_bahan_bakar() { return $this->jenis; } } class bus extends Kendaraan implements KendaraanInterface{ } class pesawat extends Kendaraan implements KendaraanInterface{ } class kapal extends Kendaraan implements KendaraanInterface{ } $bus = new bus(); $bus->set_bahan_bakar('Solar'); $pesawat = new pesawat(); $pesawat->set_bahan_bakar('Avtur'); $kapal = new kapal(); $kapal->set_bahan_bakar('Solar'); echo $bus->get_bahan_bakar(); echo "<hr/>"; echo $pesawat->get_bahan_bakar(); echo "<hr/>"; echo $kapal->get_bahan_bakar(); ?> |
Keterangan :
- Jika dijalankan maka akan menampilkan tulisan : Solar Avtur Solar
- Perhatikan pada class bus, pesawat, dan kapal kita tidak perlu membuat method get_bahan_bakar yang merupakan method dari interface KendaraanInterface, hal tersebut dikarenakan method sudah dibuat dibagian abstract class Kendaraan, karena class bus, pesawat, dan kapal menggunakan interface dan abstract class
Multiple Interface
Tidak hanya dapat digunakan bersamaan dengan abstract class, interface juga memiliki kelebihan yaitu dapat digunakan secara bersamaan pada satu class, atau biasanya dikenal dengan istilah multiple interface, perhatikan contoh dibawah ini :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
<?php interface KendaraanInterface{ public function get_bahan_bakar(); } interface JalurInterface{ public function get_jalur(); } abstract class Kendaraan { private $jenis; public function set_bahan_bakar($jenis){ $this->jenis = $jenis; } public function get_bahan_bakar() { return $this->jenis; } } class bus extends Kendaraan implements KendaraanInterface, JalurInterface{ public function get_jalur() { return 'Jalurnya adalah Jalan Raya'; } } class pesawat extends Kendaraan implements KendaraanInterface, JalurInterface{ public function get_jalur() { return 'Berjalan di Langit'; } } class kapal extends Kendaraan implements KendaraanInterface, JalurInterface{ public function get_jalur() { return 'Berjalan di Laut'; } } $bus = new bus(); $bus->set_bahan_bakar('Solar'); $pesawat = new pesawat(); $pesawat->set_bahan_bakar('Avtur'); $kapal = new kapal(); $kapal->set_bahan_bakar('Solar'); echo $bus->get_bahan_bakar(); echo "<br/>"; echo $bus->get_jalur(); echo "<hr/>"; echo $pesawat->get_bahan_bakar(); echo "<br/>"; echo $pesawat->get_jalur(); echo "<hr/>"; echo $kapal->get_bahan_bakar(); echo "<br/>"; echo $kapal->get_jalur(); ?> |
Keterangan :
- Perhatikan pada line 26, 33, 40 kita mengimplements 2 interface yaitu KendaraanInterface, dan JalurInterface, sehingga pada class bus, pesawat, dan kapal kita perlu membuat method get_jalur()
Nah jadi kurang lebih seperti itu pembahasan mengenai implementasi interface di PHP, Jika anda yang ingin didiskusikan silahkan di kolom komentar, sampai jumpa di tutorial selanjutnya
ANDA INGIN SERIUS BELAJAR PEMROGRAMAN PHP ?
Seperti yang anda ketahui bahwa saat ini skill di bidang pemrograman sangatlah dibutuhkan, salah satunya adalah pemograman PHP.
Untuk anda yang ingin serius belajar pemrograman PHP, Warung Belajar Memiliki Beberapa Paket Tutorial yang bisa membantu anda dalam belajar Pemrograman PHP, dari mulai step – step dasar hingga mampu membuat aplikasi berbasis web dengan menggunakan PHP.
Paket Tutorial ini berisi video tutorial belajar pemrograman berbahasa indonesia, cocok sekali untuk anda yang sedang belajar pemrograman PHP, bahkan untuk orang awam sekalipun.
Paket Tutorial ini juga dilengkapi dengan study kasus yang akan mempermudah pemahaman anda dalam belajar pemrograman, Mari berinvestasi untuk menambah skill dalam menguasai Pemrograman PHP
-
Tutorial Seminggu Menguasai PHP Dan MySQL
Rp80,000 Add to cart -
Tutorial HTML White Box – Panduan Belajar HTML Lengkap
Rp70,000 Add to cart -
Tutorial Web Programming Black Box – Tutorial Belajar HTML, CSS, Bootstrap 4, PHP OOP, dan MySQL – Study Kasus Membuat Aplikasi Sistem Management Stok Barang
Rp120,000 Add to cart -
Tutorial Membuat Aplikasi Dengan Codeigniter, Javascript Dan Ajax Jquery
Rp95,000 Add to cart -
Tutorial Membangun Layanan SMS Gateway Berbasis Client Server
Rp145,000 Add to cart -
Tutorial Membuat Aplikasi Dinamis Dengan HTML CSS Boostrap PHP Dan MySQL
Rp120,000 Add to cart -
TUTORIAL MEMBANGUN APLIKASI BERBASIS WEB DENGAN PHP MYSQL DAN BOOTSTRAP
Rp95,000 Add to cart -
Tutorial Tips Dan Trik Aplikatif Master PHP
Rp85,000 Add to cart
Artikel ini sangat menarik tuk di pelajari.
Terima kasih.