Interface adalah jenis khusus dari blok yang hanya
berisi method signature (atau constant ). Interface mendefinisikan sebuah (signature)
dari sebuah kumpulan method tanpa tubuh, adapun syarat interface sebagai
berikut.
Syarat interface:
# Tidak
memiliki atribut (hanya konstanta)
# Tidak
memiliki objek (tidak ada instansiasi)
# Tidak
memiliki modifier static
# Tidak
extends dari kelas lain, namun boleh extend dari interface lain bahkan boleh
extends ke lebih dari satu interface
# Tidak
implements dari interface lain
Interface mendefinisikan sebuah cara standardan umum
dalam menetapkan sifat-sifat
dari class-class. Mereka menyediakan class-class,
tanpa memperhatikanlokasinya dalam
hirarki class, untuk mengimplementasikan sifat-sifat
yang umum. Dengan catatan bahwa
interface-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.
1.Contoh program subclass dan superclass
^ Pertama kita buat terlebih
dahulu class person, sebelum memulai coding sobat harus tau dulu fungsi
constructor.
public class person {
protected String nama;
protected String alamat;
/**
* Default constructor
*/
public person (){
System.out.println("manusia");
nama = "";
alamat = "";
}
/**
* Constructor dengan dua parameter
*/
public person ( String
name, String address) {
this.nama = name;
this.alamat = address;
}
/**
* Method accessor
*/
public String
getName() {
return nama;
}
public String
getAddress() {
return alamat;
}
public void setName(String name) {
this.nama = name;
}
public void
setAddress(String add) {
this.alamat = add; }}
^ dan kita buat lagi class baru dengan nama pelajar.
public class pelajar extends person {
public pelajar ()
{
System.out.println("pelajar");
}
public static void main( String[] args) {
pelajar budy = new pelajar ();
}
}
^ Outputnya akan seperti ini:
manusia
pelajar
2.Contoh program Polimorphisme
Sebelum memulai mengcoding, saya jelaskan sedikit
tentang apa itu polimorphisme ?
Polimorphisme adalah turunan dari class utama yang
mana class utama akan terus terpanggil oleh anak atau turunannya, seperti
program berikut yang akan menampilkan Parent >> anak1.
^ Langkah pertama buat class baru dengan nama poli
public class poli {
protected String nama;
public poli(){
System.out.println("Ini Milik Orang Tua");
nama = "";
}
public poli (String name){
this.nama = name;
}
public String getName (){
System.out.println(nama);
return nama;
}
public void setName(String name) {
this.nama = name;
}
}
^ Langkah kedua buat lagi class dengan nama anak1
public class anak1 extends poli{
public anak1()
{
System.out.println("boy
andreas");
}
public String
getName() {
System.out.println(nama);
return nama;
}
public static void main( String[] args) {
anak1
anak = new anak1();
}
}
^ Langkah tiga run class milik anak1 , outputnya akan seperti berikut:
Ini Milik Orang Tua
boy andreas
3.Contoh program
java interface
Nama project :
abstract_intercae
Class yang
harus di buat di dalam project abstract_interface:
-menu
-interface1
-interface2
-interface3
-all_interface
Cara membuat class di atas mudah saja , tinggal klik kanan pada
project yang sudah di buat selanjutnya new class.
^ Pertama buat terlebih dahulu package
abstract_interface; yang berada di class menu berikut scriptnya:
package
abstract_interface;
public interface menu {
public void manusia();
public void hewan();
}
^ Untuk langkah selanjutnya tulis beberapa script
pada class tersebut seperti dibawah ini.
^ berikut untuk script bagian interface1.
package
abstract_interface;
// ABSTRACT
CLASS MILIK INTERFACE1
abstract class interface1 {
protected boolean makan , minum , belajar , tidur;
public interface1 (boolean Makan, boolean Minum, boolean Belajar, boolean Tidur){
makan =Makan;
minum =Minum;
belajar =Belajar;
tidur =Tidur;
}
// VOID
ABSTRACT YANG BELUM DI DEFINISIKAN
public abstract void menyanyi();
public void bag1(){
System.out.println("--------------interface1----------------");
System.out.println("apakah
manusia bisa makan? " +makan);
System.out.println("apakah
manusia bisa minum? " +minum);
System.out.println("apakah
manusia bisa belajar? " +belajar);
System.out.println("apakah
manusia bisa tidur? " +tidur);
System.out.println("--------------interface1----------------\n");
}
}
^ berikut untuk script bagian interface2.
package
abstract_interface;
class interface2 extends interface1{
public interface2(){
super(true , true , true , true);
}
public void menyanyi() {
System.out.println("--------------interface2----------------");
System.out.println("manusia
itu bisa bernyanyi");
System.out.println("--------------interface2---------------\n");
}
public static void main(String[] args){
interface2
in = new interface2();
in.bag1();
in.menyanyi();
}
}
^ berikut untuk script bagian interface3.
package
abstract_interface;
class interface3 extends interface1{
public interface3(){
super(true , true , false , false);
}
public void menyanyi() {
System.out.println("--------------interface3----------------");
System.out.println("manusia
itu bisa TIDAK BISA bernyanyi");
System.out.println("--------------interface3----------------\n");
}
public static void main(String[] args){
interface3
in = new interface3();
in.bag1();
in.menyanyi();
}
}
^ berikut untuk script bagian all_interface.
package
abstract_interface;
class all_interface extends interface1 implements menu {
public all_interface
(){
super(false , false , false , false);
}
public void menyanyi(){
boolean bisa = true;
boolean tidak = false;
String
a=" bisa
";
String
b=" tidak
";
a = a+ bisa ;
b = b+ tidak ;
System.out.println("--------------all_interface----------------");
System.out.println("Ada
Manusia yang " +a +" bernyanyi" +" Dan ada juga Manusia yang
" +b +" bisa bernyanyi");
System.out.println("--------------all_interface----------------\n");
}
public void manusia() {
String
nama = "boy
andreas";
String
kelamin ="laki-laki";
double tinggi = 170.5-1;
double berat = 60.50;
System.out.println("--------------all_interface----------------");
System.out.println("Nama:"+nama +"\n" +"Kelamin:"+kelamin +"\n" +"Tinggi:"+tinggi +"
Meter\n" +"Berat:"+berat);
}
public void hewan() {
String
nama ="Gajah";
double tinggi = 5;
double berat =100;
System.out.println("\nNama:" +nama +"\n" +"Tinggi:" +tinggi +"
Meter\n" +"Berat:" +berat);
System.out.println("--------------all_interface----------------\n");
}
public static void main(String[] args){
interface2
in2 = new interface2();
interface3
in3 = new interface3();
all_interface
all = new
all_interface();
all.bag1();
in2.menyanyi();
in3.menyanyi();
all.manusia();
all.hewan();
all.menyanyi();
}
}
^
outputnya akan muncul berbeda beda tergantung sobat RUNnya di class mana , ane
contohkan RUN di class all_interface maka akan muncul seperti di bawah ini:
--------------interface1----------------
apakah manusia bisa makan? false
apakah manusia bisa minum? false
apakah manusia bisa belajar?
false
apakah manusia bisa tidur? false
--------------interface1----------------
--------------interface2----------------
manusia itu bisa bernyanyi
--------------interface2----------------
--------------interface3----------------
manusia itu bisa TIDAK BISA
bernyanyi
--------------interface3----------------
--------------all_interface----------------
Nama:boy andreas
Kelamin:laki-laki
Tinggi:169.5 Meter
Berat:60.5
Nama:Gajah
Tinggi:5.0 Meter
Berat:100.0
--------------all_interface----------------
--------------all_interface----------------
Ada Manusia yang bisa true bernyanyi Dan ada juga Manusia
yang tidak false bisa bernyanyi
--------------all_interface----------------
Post Comment
0 komentar:
Post a Comment