Monday, September 22, 2014

Contoh Script Polimorphism

//Mendefinisikan kelas induk
class Model{
public double luas(){
System.out.println("tidak dapat di definisikan karena masih dalam kelas awal");
return 0;
}
}
class PersegiPanjang extends Model{
private double panjang;
private double lebar;
PersegiPanjang (int x, int y){
panjang = x;
lebar = y;
}
public double luas(){
System.out.println("Hasil yang di dapat adalah menggunakan Persegi Panjang adalah:");
return (panjang*lebar);
}
}
class BujurSangkar extends Model{
private double sisi;
BujurSangkar (int s){
sisi = s;
}
public double luas(){
System.out.println("Hasil yang di dapat adalah menggunakan Bujur Sangkar adalah:");
return (sisi*sisi);
}
}
class Segitiga extends Model{
private double alas;
private double tinggi;
Segitiga (int a, int b){
alas = a;
tinggi = b;
}
public double luas(){
System.out.println("Hasil yang di dapat adalah menggunakan Segitiga adalah:");
return ((alas*tinggi)/2);
}
}
class Lingkaran extends Model{
private double jarijari;
private final double PHI = 3.14;
Lingkaran (int r){
jarijari = r;
}
public double luas(){
System.out.println("Hasil yang di dapat adalah menggunakan Lingkaran adalah:");
return (PHI*jarijari*jarijari);
}
}
class ContohPolimorphism{
public static void main (String[] args){
Model obj;
PersegiPanjang pp = new PersegiPanjang(5, 3);
BujurSangkar bs = new BujurSangkar(4);
Segitiga st = new Segitiga(4, 3);
Lingkaran lk = new Lingkaran(7);
//obj mengacu pada objek PersegiPanjang
obj = pp;
//akan memanggil method yang terdapat pada PersegiPanjang
System.out.println("Luas:"+obj.luas());
System.out.println();
//obj mengacu pada objek BujurSangkar
obj = bs;
//akan memanggil method yang terdapat pada BujurSangkar
System.out.println("Luas:"+obj.luas());
System.out.println();
//obj mengacu pada objek Segitiga
obj = st;
//akan memanggil method yang terdapat pada Segitiga
System.out.println("Luas:"+obj.luas());
System.out.println();
//obj mengacu pada objek Lingkaran
obj = lk;
//akan memanggil method yang terdapat pada Lingkaran
System.out.println("Luas:"+obj.luas());
System.out.println();
}
}

0 comments:

Post a Comment