Kamis, 05 September 2019

Interface Pada Java



Interface adalah sebuah tipe referensi pada Java. Interface secara struktur serupa dengan class. Isi dari interface adalah method abstract, artinya method hanya dideklarasikan tidak ditulis secara utuh. Deklarasi method pada interface serupa dengan method pada class abstract.
Variable pada interface akan memiliki aturan static dan final sedangkan method akan memiliki aturan public dan abstract. Hal ini terjadi setelah proses kompilasi seperti yang terlihat pada gambar.


Perubahan Aturan Setelah Kompilasi Pada Interface

Hubungan Antara Class dan Interface

Seperti yang terlihat pada gambar dibawah ini, sebuah class melakukan extends terhadap class  lain, sebuah interface melakukan extends terhadap interface lain, namun sebuah class melakukan implements pada interface.


Kerjakan Projek Berikut

Buat projek dengan nama "LatihanInterface" dengan kategori java dan projectnya "class java liblary"
 
Perhatikan kode interface CetakLaporan:
public interface CetakLaporan {
    public void cetakA4();
    public void cetakA3();
}
Interface CetakLaporan diimplementasikan pada class LaporanTahunan
public class LaporanTahunan implements CetakLaporan{
    public void cetakA4(){
        System.out.println("Cetak Laporan di A4");
    }
    public void cetakA3(){
        System.out.println("Cetak Laporan di A3");
    }
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        LaporanTahunan lt = new LaporanTahunan();
        lt.cetakA3();
        lt.cetakA4();
    }
}


Jalankan file dengan menekan Shift F6 oke :)

sampai disini ada yang bertanya ?



Lanjut

Pewarisan Pada Interface

Jika sebuah class tidak diperkenankan melakukan pewarisan (extends) lebih dari 1 class, maka interface diperbolehkan melakukan hal tersebut. Namun sebuah class diperbolehkan melakukan implementasi terhadap lebih dari 1 interface.


Pewarisan Banyak Pada Java
Perhatikan kode program berikut ini
 
Buat public class dengan nama "TampilLaporan"
ketik source coding berikut:

public interface TampilLaporan {
    public void tampilWeb();
    public void tampilMobile();
}
 
lalu kalian buat public class "LaporanTahunan" 
ketik source coding berikut:
 
public class LaporanTahunan implements CetakLaporan, TampilLaporan{
    public void cetakA4(){
        System.out.println("Cetak Laporan di A4");
    }
    public void cetakA3(){
        System.out.println("Cetak Laporan di A3");
    }
    public void tampilWeb(){
        System.out.println("Tampil di Monitor");
    }
    public void tampilMobile(){
        System.out.println("Tampil di Handphone");
    }
    
    
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        LaporanTahunan lt = new LaporanTahunan();
        lt.cetakA3();
        lt.cetakA4();
        lt.tampilMobile();
        lt.tampilWeb();
    }
}
 

Tidak ada komentar:

Posting Komentar