Pengenalan OOP
Polymorphism
Polymorphism merupakan salah satu dari ketiga karakteristik yang ada dalam konsep Object Oriented Programming atau biasa disingkat dengan OOP.
Polymorphism itu sendiri adalah sebuah object yang memiliki sifat sama dengan class induknya tapi dapat berubah dan memiliki banyak bentuk yang berbeda.
Polymorphism itu sendiri ada 2 bagian yaitu:
1. Overriding
2. Overloading
Contoh Overloading:
Buatkan satu kelas namanya Bunga, kini anda telah memiliki Class Bunga.
Kemudian coba ketik listing berikut:
public class Bunga {
String jenis;
String warna;
int Harga=0;
public Bunga(String jenis,String warna){
this.jenis=jenis;
this.warna=warna;
}
public Bunga(){
}
void pesan(){
System.out.println("Jenis"+this.jenis);
System.out.println("Warna"+this.warna);
}
void bayar(int q,int u){
Harga=q*u;
System.out.println("Total Bayar"+q+"*"+u+"="+Harga);
}
}
Kemudian buat lagi Class BungaCantik
Lalu ketik listing berikut:
public class BungaCantik {
public static void main(String[]args){
Bunga bungaku=new Bunga(" Mawar"," Merah");
bungaku.pesan();
Bunga total=new Bunga();
total.bayar(10000,3);
}
}
Contoh Overriding:
Buat Class dengan nama BungaCantikQyeen
Kemudian ketik listing berikut:
public class BungaCantikQyeen extends Bunga {
int bayar;
int diskon;
public void total(int q,int u)
{
diskon=q*u*2/100;
bayar=(q*u)-(q*u*2/100);
System.out.println("Diskon="+diskon);
System.out.println("Total Bayar="+bayar);
}
}
Kemudian buat lagi Class dengan nama BungaCantikQyeenBeraksi
Lalu ketik listing berikut:
public class BungaCantikQyeenBeraksi {
public static void main(String[]args){
Bunga bungaku=new Bunga(" Mawar"," Merah");
bungaku.pesan();
Bunga total=new Bunga();
total.bayar(10000,5);
BungaCantikQyeen BungaCantikKu=new BungaCantikQyeen();
BungaCantikKu.total(10000, 5);
}
}