RSS
Tidak ada Yang Tidak Mungkin Untuk Orang Yang Mau Berusaha
Text Select Onion Kun

Jumat, 13 April 2012

PEWARISAN (INHERITANCE) dan Polymorphisme pada Java


 
PEWARISAN (INHERITANCE)

Suatu class dapat diciptakan berdasarkan class lain. Class baru ini mempunyai sifat-sifat yang sama dengan class pembentunya, ditambah sifat-sifat khusus lainnya, inilah yang disebut konsep pewarisan. Dengan pewarisan kita dapat menciptakan class baru yang mempunyai sifat sama dengan class induknya tanpa menulis ulang bagian-bagian yang sama. Pewarisan merupakan unsur penting dalam pemrograman berorientasi objek dan merupakan blok bangunan dasar pertama penggunaan kode ulang (code reuse).
Sifat pewarisan ini menyebabkan class-class dalam pemrograman berorientasi objek membentuk hirarki class mulai dari class dasar, class turunan pertama, class turunan kedua dan seterusnya. 

contoh program inheritance di java
buat file pertama dengan nama persegipanjang.java


class persegipanjang{

   int kel = 0;

   int lu = 0;





   //method

   void keliling(int panjang, int lebar){

      kel = lebar * panjang * 2;

      System.out.println("DATA PERSEGI PANJANG");

      System.out.println("Panjang  : " + panjang);

      System.out.println("Lebar    : " + lebar);

      System.out.println(" ");

      System.out.println("Rumus Keliling : panjang x lebar x 2");

      System.out.println("Keliling : " + kel + " dari " + "(" + panjang + " * " + lebar + " * " + " 2" + ")");

      System.out.println(" ");

   }





void luas(int panjang, int lebar){

      lu = lebar * panjang;

      System.out.println("Rumus Luas : panjang x lebar");

      System.out.println("Luas : " + lu + " dari " + "(" + panjang + " * " + lebar + ")");

      System.out.println(" ");

   }

}


lalu kita buat lagi sub class yang akan dipanggil nantinya dengan nama hitungpersegipanjang .java


class balok extends persegipanjang{



int volume;



public void volume(int tinggi){

   volume = lu * tinggi;

   System.out.println("Rumus Volume: luas x tinggi");

   System.out.println("Volume : " + volume + " dari " + "(" + lu + " * " + tinggi + ")");

  }

}



class hitungpersegipanjang{

  public static void main (String[] args){

     //membuat objek

     balok persegipj = new balok();



     //memanggil methode di objek

     //persegipj.keliling(10,2);

     persegipj.keliling(10,5);

     persegipj.luas(10,5);

     persegipj.volume(7);

  }

}




maka output akan berupa : 






Polymorphisme

            Polymorphisme adalah salah satu dari tiga kemampuan yang mendasar yang dimiliki oleh OOP, setelah data abstraction dan inheritance.

Polymorphism menyediakan cara yang berbeda pada pemisahan interface dari implementasinya, untuk memasangkan ulang apa dari bagaimana. Polymorphism memberikan organisasi kode yang lebih baik dan kode menjadi lebih mudah dibaca, juga memberikan suatu kemampuan pada program untuk berkembang secara terus menerus baik pada tahap pengembangan awal ataupun pada saat ingin menambahkan kemampuan-kemampuan yang baru.
class CetakDataTipe {

// membuat method dengan nama sama tapi berbeda tipe data
public void CetakData(String Cetak) {
System.out.println(Cetak);
}
public void CetakData(int Cetak) {
System.out.println(Cetak);
}
public void CetakData(double Cetak) {
System.out.println(Cetak);
}
public void CetakData(char Cetak) {
System.out.println(Cetak);
}
}
public class Polymorphism {

public static void main(String[] args) {
CetakDataTipe data = new CetakDataTipe();

System.out.print("Cetak Data Tipe String : ");
data.CetakData("Sumatra");

System.out.print("Cetak Data Tipe Integer : ");
data.CetakData(1989);

System.out.print("Cetak Data Tipe Double : ");
data.CetakData(16.5 / 2);

System.out.print("Cetak Data Tipe Char : ");
data.CetakData('N');
}
}

Output seperti dibawah ini :



2 komentar: