Apa Perbedaan Antara Kelas Abstrak dan Antarmuka di PHP

Daftar Isi:

Anonim

NS perbedaan utama antara Kelas Abstrak dan Antarmuka di PHP adalah kelas abstrak dapat terdiri dari metode abstrak dan metode non-abstrak sementara semua metode dalam antarmuka tidak memiliki implementasi.

PHP adalah bahasa skrip sisi server. Ini adalah salah satu bahasa paling populer dalam pengembangan web. PHP memungkinkan menangani file, menangani formulir, mengirim email, mengunggah file, menghubungkan aplikasi dengan DBMS seperti MySQL dan banyak tugas lainnya. Kerangka kerja seperti Zend dan Code Igniter didasarkan pada PHP. PHP juga mendukung Pemrograman Berorientasi Objek (OOP). Salah satu konsep utama dalam OOP adalah abstraksi. Ini membantu menyembunyikan implementasi dan hanya menampilkan fungsionalitas kepada pengguna. Kelas abstrak dan antarmuka adalah dua metode untuk mencapai abstraksi.

Abstraksi, Kelas Abstrak, Antarmuka, OOP, PHP

Apa itu Kelas Abstrak di PHP

Metode abstrak adalah metode yang tidak memiliki implementasi. Kelas abstrak adalah kelas yang memiliki setidaknya satu metode abstrak. Itu dapat memiliki metode abstrak serta metode non-abstrak. Kata kunci “abstrak” digunakan untuk mendeklarasikan kelas abstrak. Selain itu, kelas yang memperluas kelas abstrak harus menyediakan implementasi untuk metode abstrak di kelas itu. Pemrogram tidak dapat membuat objek menggunakan kelas abstrak, tetapi mereka dapat membuat objek dari kelas yang memperluas kelas abstrak.

Gambar 1: Kelas abstrak di PHP

Pada gambar di atas, Shape adalah kelas abstrak. Ini memiliki metode abstrak yang disebut menggambar dan metode non-abstrak yang disebut tampilan. Kelas segitiga memperluas Bentuk. Jadi, kelas segitiga menyediakan implementasi untuk penarikan metode abstrak. Pada baris 19, sebuah objek Segitiga dibuat. Pada baris 20, metode menggambar dipanggil menggunakan objek itu. Oleh karena itu, metode draw dijalankan dan menampilkan "Segitiga" di konsol.

Apa itu Antarmuka di PHP

Semua metode dalam antarmuka adalah metode abstrak. Dengan kata lain, hanya berisi prototipe fungsi atau fungsi tanpa implementasi. Programmer tidak dapat membuat objek menggunakan antarmuka. Antarmuka dideklarasikan menggunakan kata kunci "antarmuka". Meskipun metode dalam antarmuka abstrak, programmer tidak mendeklarasikannya dengan kata kunci abstract. Sebaliknya, metode tersebut harus memiliki cakupan visibilitas publik. Kelas yang mengimplementasikan antarmuka harus menyediakan implementasi untuk semua metode abstraknya.

Gambar 2: Program PHP 1 dengan antarmuka

Dalam program di atas, Shape adalah sebuah antarmuka. Ini memiliki metode yang disebut draw. Itu tidak memiliki implementasi. Kelas Segitiga memperluas Bentuk. Kelas Triangle menyediakan implementasi untuk metode draw. Pada baris 16, objek objek Segitiga dibuat. Pada baris 17, metode draw dipanggil menggunakan objek tersebut. Oleh karena itu, metode menggambar dijalankan dan menampilkan "Segitiga" di konsol.

Selain itu, antarmuka juga membantu mengimplementasikan pewarisan berganda. Multiple inheritance adalah proses yang memungkinkan sebuah kelas untuk menggunakan atribut dan metode dari beberapa kelas.

Gambar 3: Program PHP dengan antarmuka

Antarmuka A memiliki metode metodeA. Demikian pula, antarmuka B memiliki metode metodeB. Metode ini adalah prototipe fungsi. Dengan kata lain, metode ini tidak memiliki implementasi. Class Test mengimplementasikan interface A dan B. Oleh karena itu, class tersebut menyediakan implementasi untuk methodA dan methodB. Class Test juga memiliki metodenya sendiri yang disebut methodTest. Baris 26, membuat objek Test. Kemudian methodA, method, dan methodTest dipanggil menggunakan objek tersebut.

Perbedaan Antara Kelas Abstrak dan Antarmuka di PHP

Definisi

Kelas abstrak dalam PHP adalah kelas yang dideklarasikan dengan kata kunci abstrak dan merupakan kumpulan metode abstrak dan non-abstrak. Sebaliknya, antarmuka dalam PHP adalah tipe referensi dan terdiri dari kumpulan metode tanpa implementasi atau prototipe fungsi. Jadi, inilah perbedaan utama antara Kelas Abstrak dan Antarmuka di PHP.

Metode

Kelas abstrak dapat memiliki metode abstrak serta metode non-abstrak sementara semua metode dalam antarmuka adalah metode tanpa implementasi.

Kata kunci

Sementara kelas abstrak dideklarasikan dengan kata kunci “abstrak”, antarmuka dideklarasikan dengan kata kunci “antarmuka”.

Penggunaan

Perbedaan lain antara Kelas Abstrak dan Antarmuka di PHP adalah bahwa kelas abstrak membantu mencapai abstraksi sementara antarmuka membantu mencapai abstraksi serta pewarisan berganda.

Kesimpulan

Bahasa PHP mendukung Pemrograman Berorientasi Objek. Abstraksi adalah pilar OOP. Kelas abstrak dan antarmuka adalah dua metode untuk mencapai abstraksi. Perbedaan utama antara Kelas Abstrak dan Antarmuka di PHP adalah bahwa kelas abstrak dapat terdiri dari metode abstrak dan metode non-abstrak sedangkan semua metode dalam antarmuka tidak memiliki implementasi.

Referensi:

1.“Kelas Abstrak di PHP.” GeeksforGeeks, 11 Desember 2018, Tersedia di sini. 2. "Beberapa Warisan di PHP." GeeksforGeeks, 21 Februari 2019, Tersedia di sini.

Apa Perbedaan Antara Kelas Abstrak dan Antarmuka di PHP