Konsep Interface pada OOP di Bahasa Pemrograman Java

Konsep interface pada OOP di bahasa pemrograman Java sangatlah asing bagi saya yang terbiasa dengan bahasa pemrogman Python. Awalnya saya berfikir apa sih konsep interface, kenapa kita harus menggunakan itu, apa kelebihannya dsbnya. Pada artikel ini saya coba jelaskan mengenai hal itu.

Apa itu konsep interfaces ?

Konsep interface digunakan untuk mengkonsep sebuah class dapat melakukan apa tanpa perlu menulis spesifik bagaimana tindakan tersebut dilakukan. Jika class diibaratkan sebagai blueprint dari Object. Maka interface adalah blueprint dari class. Semisalnya kita ingin membuat interface MakhlukHidup maka kita cukup mendefinisikan bahwa mahluk hidup itu memiliki method bernapas, makan, bergerak, berkembang dsbnya tanpa perlu menjelaskan detail bagaimana bernapasnya, makannya dsbnya.

Kenapa interfaces digunakan ?

dibandingkan menggunakan konsep Inheritance yang dimana suatu kelas anak hanya bisa memiliki (extends) 1 induk. Maka dalam interfaces suatu kelas bisa memiliki (implements) banyak interfaces-interfaces. Semisalnya terdapat interfaces lain yaitu Karnivora yang didalamnya terdapat method pencernaanDaging, caraBerburu dsbnya maka Jika terdapat Class Macan kemudian memiliki (implements) MakhlukHidup dan Karnivora maka di Class Macan kita mendeklarasikan semua method-method tadi.

Contoh Code

Source code :


Hasil Run :

Penjelasan :

  • Terdapat 4 buah file yaitu MakhlukHidup.java, Karnivora.java, Macan.java, dan Mesin2.java.
    • MakhlukHidup dan Karnivora merupakan interfaces
    • Macan merupakan class biasa
    • dan Mesin2 digunakan untuk merunning program tersebut
  • class Macan mengimplements ke interfaces MakhlukHidup dan Karnivora, maka dari itu semua method yang ada di interfaces tersebut harus di override kembali di kelas Macan.
  • Pada interfaces tidak dijelaskan bagaimana isinya hanya membuat kerangkanya saja dan dijelaskan bagaimana isinya di class yang mengimplement interface tersebut.

Sekian mohon maaf kalau ada kesalahan dan jika ada pertanyaan silahkan tulis di komentar. Terimakasih

Referensi :

  • Java™The Complete Reference,Seventh Edition (Herbert Schildt)


Posting Komentar untuk "Konsep Interface pada OOP di Bahasa Pemrograman Java"