DISKON TERBATAS! Masukkan kupon "skillbaru" saat checkout di kelas apa saja

Logo Koala Skodev mengetik

Skodev

Belajar coding dalam bahasa Indonesia

INTERFACE CLASS

Pelajari tentang interface class di PHP. definisi, cara membuat, dan implementasinya dalam pemrograman dengan contoh sederhana.

Interface dalam PHP adalah sebuah konstruksi yang memungkinkan kamu untuk membuat kode yang lebih terstruktur dan memaksa kelas-kelas tertentu untuk mengimplementasikan metode yang telah didefinisikan di dalamnya. Interface mirip dengan sebuah kontrak yang harus dipatuhi oleh kelas yang mengimplementasikannya.

Mengapa Menggunakan Interface?

Menggunakan interface dapat:

  • Meningkatkan modularitas program
  • Membantu dalam pembuatan kode yang terorganisir
  • Mempermudah proses debugging

Membuat Interface

Untuk membuat interface, kamu menggunakan keyword interface, diikuti dengan nama interface dan kemudian diikuti oleh daftar metode yang harus diimplementasikan oleh sebuah kelas.

interface CarInterface {
    public function setModel($name);
    public function getModel();
}

Mengimplementasikan Interface

Kelas yang mengimplementasikan interface harus menggunakan keyword implements. Setiap metode yang ada dalam interface harus didefinisikan dalam kelas tersebut.

class Car implements CarInterface {
    private $model;

    public function setModel($name) {
        $this -> model = $name;
    }

    public function getModel() {
        return $this -> model;
    }
}

Multiple Interfaces

PHP tidak mendukung multiple inheritance (pewarisan ganda), tapi kamu bisa mengimplementasikan lebih dari satu interface dalam sebuah kelas.

interface CarInterface {
    public function setModel($name);
    // ...
}

interface VehicleInterface {
    public function setHasWheels($bool);
    // ...
}

class MiniCar implements CarInterface, VehicleInterface {
    private $model;
    private $hasWheels;

    public function setModel($name){
        $this -> model = $name;
    }

    // methods from CarInterface

    public function setHasWheels($bool) {
        $this -> hasWheels = $bool;
    }

    // methods from VehicleInterface
}

Interface sebagai Tipe Data

Kamu juga bisa menggunakan interface sebagai tipe data dalam parameter fungsi, ini memastikan bahwa objek yang diberikan sebagai argumen memiliki metode yang didefinisikan oleh interface tersebut.

function carDetail(CarInterface $car) {
    return $car->getModel();
}

$car = new MiniCar();
$car->setModel('Mini Cooper');
echo carDetail($car); // akan mencetak 'Mini Cooper'

Dengan materi ini, kamu telah belajar dasar-dasar interface di PHP, termasuk pembuatan, implementasi, dan penggunaannya sebagai tipe data. Ini akan membantu kamu membangun aplikasi yang lebih fleksibel dan terstruktur.

👈🏼 Overriding metode
Abstract class 👉🏼