Cara menggunakan php interfaces

Hallo sahabat Dumenity berjumpa lagi dalam tutorial kursuswebsite, pada tutorial kali ini kita akan belajar tentang Cara Mengimplementasikan PHP Interfaces. Di PHP, blok interface yang mendeklarasikan seperangkat fungsi yang akan didefinisikan dengan kelas untuk mengimplementasikan interface ini. Sebuah kelas dapat memperpanjang lebih dari satu interface, sehingga kita dapat mensimulasikan banyak inheritances di PHP. Mari kita lihat semuanya, secara rinci dengan artikel ini.

Kelas PHP pengimplementasian Interface

Saat mengimplementasikan interface dengan kelas PHP, kita harus mendefinisikan semua fungsi yang dideklarasikan di interface itu seperti itu, tanpa mengubah argumen, jenis pengembalian, pengubah akses atau apapun.Misalnya, kode berikut memiliki hubungan dengan interface dan kelas PHP untuk menunjukkan bagaimana menerapkan interface untuk kelas.

interface UserInterface {
public function setMenu[$menu_array];
public function getContent[$page];
}
class WebApp implements UserInterface {
public function setMenu[$menu_array] {
$menu_bar="";
foreach[$menu_array as $k=>$v] {
$menu_bar .="" . $menu_array[$k]["menu_caption"] . "  ";
}
return $menu_bar;
}
public function getContent[$page] {
$content = "

Welcome to the " . ucwords[$page] . " page

"; return $content; } }

Pada contoh di atas, kita telah membuat sebuah interface PHP yang diberi nama UserInterface, dan ini diimplementasikan oleh kelas WebApp dengan menggunakan alat bantu kata kunci. Kita bisa mengimplementasikan interface ini, dimanapun kita menginginkan set komponen user interface yang sama yaitu menu dan content untuk aplikasi web kita.

php_interface

Sementara implementasi interface di atas, dua fungsi yang dideklarasikan di UserInterface telah didefinisikan di kelas yang mengimplementasikannya. Sementara menentukan, jika salah satu dari fungsi tersebut, atau tanda tangan apapun, seperti argumen, jenis pengembalian diubah, maka akan menyebabkan beberapa kesalahan PHP. Misalnya, jika kelas WebApp tidak memiliki getContent [] definisi, maka, kesalahannya adalah,

Fatal error: Class WebApp contains 1 abstract method and must therefore be declared abstract or implement the remaining methods [UserInterface::getContent] in ...

Oke itulah tadi pembahasan saya tentang Cara Mengimplementasikan PHP Interfaces. Semoga bermnafaat.

You are here: Home / PHP / Tutorial PHP OOP Part 14 : Menggunakan Interface dan Implements

Interface yang saya maksud disini adalah sebutan singkat saya untuk Object Interface. Interface merupakan istilah untuk konsep yang akan diimplementasi pada class. interface mengijinkan kita membuat method yang harus diimplementasi pada class tanpa harus mendefinisikan bagaimana isi dari method tersebut.

Sekilas Interface memang mirip dengan class abstrak, namun prinsip dan penerapannya berbeda karena Interface memang bukan sebuah class. Interface lebih bertujuan membuat konsep method yang seragam dari pada membuat kerangka class seperti class abstrak.

Membuat Interface

Untuk membuat interface kita menggunakan keyword “interface”, diikuti dengan nama interface kemudian sepasang kurung kurawal {} yang berisi konsep-konsep method yang akan diimplementasi nantinya.

  

Contoh membuat interface untuk class Rumus:

  

Mengimplementasi Interface

Untuk mengimplementasi interface pada class, kita menggunakan keyword “implements” dibelakang nama class.

  

jika sebuah class mengimplementasi interface, maka pada class tersebut harus mengimplementasi semua method yang ada pada interface.
Contoh :

Hal-hal yang perlu diperhatikan dalam menggunakan Interface dan Implements

Dalam menggunakan interface dan implements ada beberapa aturan dan kondisi yang harus kita patuhi, diantaranya :

1. Nama class tidak boleh sama dengan nama interface

Hal ini karena PHP mendeteksi interface sebagai class, meskipun pada kenyataannya hanya berupa konsep saja. Jika nama class dan interface sama maka akan muncul error “Fatal error: Cannot redeclare class”, artinya ada pendeklarasian class kembali.

 

Jika script diatas dijalankan maka akan tampil error berikut ini :

Fatal error: Cannot redeclare class Rumus in /home/sabrina/www/php/index.php on line 8

2. Method pada interface harus diset public

Karena sifatnya yang terbuka dan harus diimplementasi maka semua method pada interface harus diset public atau tidak ditulis sama sekali [sama juga berarti public]. Jika diset private atau protected akan muncul error “Fatal error: Access type for interface method”.

 

Jika script diatas dijalankan maka akan tampil error berikut ini :

Fatal error: Access type for interface method konsepRumus::luas_persegi[] must be omitted in /home/sabrina/www/php/index.php on line 3

3. Interface tidak boleh memiliki method normal

Sebagaimana fungsi interface yang bertujuan membuat konsep bukan class, maka pada interface tidak boleh ada method normal. Hal inilah salah satu yang membedakan antara interface dan class abstrak.
Jika hal ini terjadi akan muncul error “Fatal error: Interface function cannot contain body “.

 

Jika script diatas dijalankan maka akan tampil error berikut ini :

Fatal error: Interface function konsepRumus::luas_segitiga[] cannot contain body in /home/sabrina/www/php/index.php on line 6

4. Interface bisa diturunkan

Seperti halnya class, interface juga bisa diturunkan. Untuk membuat interface turunan kita juga menggunakan keyword extends seperti pada class.

 

5. Interface bisa memiliki konstanta

Interface juga bisa memiliki konstanta seperti class. Untuk mengakses konstanta pada interface sama dengan mengakses konstanta pada umumnya yaitu menggunakan operator :: [titik dua ditulis dobel].

    

6. Sebuah class bisa mengimplementasi banyak interface sekaligus

Jika pada abstrak berlaku satu class abstrak untuk satu class, maka pada interface tidak. Kita bisa mengimplementasi beberapa interface sekaligus dalam satu class.

  

Referensi :

  • //php.net/manual/en/language.oop5.interfaces.php
  • //www.duniailkom.com/tutorial-belajar-oop-php-pengertian-object-interface-dalam-pemrograman-berbasis-objek/

Apa itu interface di PHP?

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.

Bagaimana cara menggunakan interface pada kelas lain?

Bagaimana cara menggunakan interface pada kelas lain adalah....
Harus menggunakan keyword implements..
Mendeklarasikan interface..
Multiple interface..
Harus menghasilkan interface..

Apa itu interface dalam pemrograman?

Interface merupakan suatu mekanisme yang disediakan oleh java yang memungkinkan berbagi konstanta atau menentukan bentuk metode yang dapat digunakan oleh sejumlah kelas bentuk metode yang dapat digunakan oleh sejumlah kelas.

Apa itu object interface?

Secara sederhana, Object Interface adalah sebuah 'kontrak' atau perjanjian implementasi method. Bagi class yang menggunakan object interface, class tersebut harus mengimplementasikan ulang seluruh method yang ada di dalam interface.

Bài mới nhất

Chủ Đề