Interface Pada Java Beserta Listing Program Sederhana

1) Pengantar Interface
Di kelas kita  sudah belajar apa interface tersebut, untuk mengulang materi di kelas, semoga postingan saya tentang interface kali ini bisa memperjelas tentang konsep interface yang kita pelajari di kelas praktikum dan penjelasan tugas yang sudah dikumpulkan minggu lalu.
Kenapa kita butuh interface?  Sebagai pengantar kita harus mengetahui apa yang disebut interface dan kegunaannya dalam pemrograman java khususnya pemrograman berorientasi objek, karena kita akan bermain banyak dengan objek tersebut.
Interface adalah jenis khusus dari blok yang hanya berisi method signature atau constant.  Interface mendefinisikan sebuah signature dari sebuah kumpulan method tanpa tubuh. Interface mendefinisikan sebuah cara standar dan umum dalam menetapkan sifat-sifat dari class-class. Mereka menyediakan class-class tanpa memperhatikan lokasinya dalam hirarki class untuk mengimplementasikan sifat-sifat yang umum. Dengan catatan bahwa interface juga menunjukkan polimorfisme, dikarenakan program dapat memanggil method interface dan versi yang tepat dari method yang akan dieksekusi tergantung dari tipe object yang melewati pemanggil method interface.
Untuk lebih mudah memahami, interface merupakan sekumpulan dari methodmethod yang dibuat, namun belum ada operasi di dalam tubuh method tersebut.Interface bisa diturunkan atau diwariskan kepada class yang ingin memakai method yang ada dalam masing-masing interface tersebut dengan keyword extends [interface yang didefinisikan]. Sebuah class dapat mengimplementasikan 1 interface yang sudah dibuat dengan keyword implements.
ü  Ciri-ciri Interface
Ciri-ciri dari interface adalah sebagai berikut :
       Method interface tidak punya tubuh, sebuah interface hanya dapat mendefinisikan konstanta dan interface tidak langsung mewariskan hubungan dengan class lainnya, mereka didefinisikan secara independent.
       Tidak bisa membuat instance atau objek baru dari sebuah interface.
       Ciri umum lain adalah baik interface maupun class dapat mendefinisikan method. Bagaimanapun, sebuah interface tidak memiliki kode implementasi sedangkan class memiliki salah satunya.
ü  Pendeklarasian Interface
Contoh pendeklarasian interface adalah sebagai berikut :
Listing Program

1  public interface InterfaceA{
2  String atributA = “Ini konstanta dari interface A”;
3  void methodSatuA();
4  String methodSatuA();
5  }

ü  Implementasi Interface
Cara menggunakan interface pada kelas lain, harus menggunakan keyword implements. Deklarasi implements interface sebagai berikut :
1.     Dalam project yang telah dibuat sebelumnya, buatlah satu package baru dengan nama (Misal : tugas01).
2.     Dalam package tersebut, buatlah interface dengan nama InterfaceA.





Listing Program

1        public interface InterfaceA{
2        String atributA = “Ini konstanta dari interface A”;
3        void methodSatuA(); 4 String methoDuaA();
5 }

3.     Selanjutnya buat class baru dengan nama CobaPertama yang mengimplementasikan sifat dari InterfaceA.
Listing Program

1   public class CobaPertama implements InterfaceA{
2   public void methodSatuA(){
3   System.out.println(“Isi method pertama dari interface A”);
4   }
5   public String methodDuaA(){
6   return atributA;
7   }
8   Public static void main (String []args){
9   CobaPertama obj = new CobaPertama();
10  obj.methodSatuA();
11  String pesan = obj.methodDuaA();
12  System.out.println(pesan);
13  }
14  }

2) Multiple Interface
Java tidak memperkenankan adanya multiple inheritance, tetapi java memperbolehkan multiple interface.Dibawah ini adalah ilustrasi multiple interface.





ü Implementasi Multiple Interface
Keuntungan menggunakan interface (implements) dibandingkan dengan menggunakan konsep pewarisan adalah jika dalam pewarisan(extend) hanya mengenal single inheritance maka dalam interface kita dapat menggunakan konsep multiple interface. Jadi suatu class dapat mengimplemen lebih dari satu interface.
Contoh penggunaan multiple adalah sebagai berikut :
1.         Pada package (tugas01) yang sudah kita kerjakan sebelumnya, tambahkan class interface dengan nama InterfaceB. Listing Program
2.         Buat class baru dengan nama CobaKedua.
Listing Program

1   public class CobaKedua implements InterfaceA{
2   public void methodSatuA(){
3   System.out.println(“Isi method pertama dari interface A”);
4   }
5   public String methodDuaA(){
6   return atributA;
7   }
8   Public void methodSatuB(){

C. Rangkuman


Interface merupakan kumpulan dari method-method yang belum terdapat operasi di dalam tubuh method tersebut.Interface bisa diturunkan atau diwariskan kepada class yang ingin memakai method yang ada dalam masing-masing interface tersebut dengan keyword extends [interface yang didefinisikan]. Sebuah class dapat mengimplementasikan 1 interface yang sudah dibuat dengan keyword implement.Interface dapat mendefinisikan konstanta. Interface juga tidak dapat membuat instance atau objek baru dari sebuah interface.Baik interface maupun class dapat mendefinisikan method. dalam java terdapat multiple interface, dimana dalam satu class dapat mengimplementasikan lebih dari satu interface.