Kamis, 19 April 2012

Polymorphisme dan Inheritance

Pada tulisan saya kali ini, saya akan membahas tentang Polymorphisme (Bentuk Banyak) dan Inheritance (pewarisan) pada bahasa pemrograman JAVA. Baiklah saya akan memulai penulisan ini dengan Polymorphisme.

POLYMORPHISME

      Polymorphisme memungkinkan dua atau lebih objek merespon pesan yang sama. Jadi polymorphisme adalah suatu aksi yang memungkinkan pemrogram menyampaikan pesan tertentu keluar dari hirarki obyeknya, dimana obyek yang berbeda memberikan tanggapan/respon terhadap pesan yang sama sesuai dengan sifat masing-masing obyek.

Sebuah analogi dari polimorfisme untuk kehidupan sehari-hari adalah bagaimana siswa menanggapi bel sekolah. Setiap siswa mengetahuisignifikan bel. Ketika bel (pesan) cincin, bagaimanapun, memiliki arti tersendiri bagi siswa yang berbeda (obyek). Beberapa siswa pulang,beberapa pergi ke perpustakaan, dan beberapa pergi ke kelas lain. Setiap siswa menanggapi bel, tapi bagaimana mereka menanggapi itu mungkin berbeda.

Tujuan pengiriman tidak harus tahu bagaimana obyek menerima mengimplementasikan pesan. Ada dua jenis polymorphisme yaitu Override dan Overload. Di dalam java dikatakan bersifat override ketika terdapat method dengan nama, parameter dan tipe data yang sama persis di dalam kelas induk maupun kelas turunannya. Overload Polymophisme memiliki perbedaan pada method yang ada. Pada overload polymorphisme terdapat lebih dari satu method dengan nama yang sama tetapi memiliki jumlah parameter maupun tipe data yang berbeda.

Perhatikan Program Polymorphisme berikut:



class A {
   int i;
      A(int a, int b) {
      i = a+b;
}

void add() {
   System.out.println("Sum of a and b is: " + i);
   }
}

class B extends A {
   int j;
      B(int a, int b, int c) {
      super(a, b);
      j = a+b+c;
}

void add() {
super.add();
   System.out.println("Sum of a, b and c is: " + j);
   }
}

class MethodOverriding {
   public static void main(String args[]) {
      B b = new B(10, 20, 30);
      b.add();
   } 
}


Output:


INHERITANCE

Pewarisan adalah salah satu konsep penting dalam pemograman berbasis objek dan mempunyai dampak langsung pada cara merancang dan menulis kelas. Pewarisan merupakan suatu proses penciptaan kelas baru dengan mewarisi karakteristik kelas yang telah ada, ditambah karakteristik unik kelas baru tersebut. Pewarisan adalah mekanisme yang ampuh dengan memungkinkan kelas mewarisi fungsionalitas kelas yang telah ada. Untuk menciptakan kelas baru, kita hanya perlu menspesifikasikan cara kelas itu berbeda dari kelas yang telah ada. 

Pewarisan merupakan mekanisme yang ampuh dan alami untuk mengorganisasikan program. Dalam terminologi Java, kelas yang diwarisi disebut dengan superkelas,sedangkan kelas yang mewarisi disebut subkelas. dengan demikian, subkelas adalah versi spesial dari superkelas. Subkelas mewarisi semua metode dan variabel superkelasnya. secara praktis berarti jika superkelas telah didefinisikan kelas yang kita perlukan maka kitak tidak harus mendefinisikan ulang source code dari kelas lain. Superkelas secara otomatis memberi perilakunya ke subkelas pewaris. 

Perhatikan Program Inheritance berikut:




public class base /*1st class*/ {
base() {
   System.out.println("saya");
   }
}  

class derive extends base /*2nd class & inherit base class*/ {
   derive() {
   System.out.println("pintar");
   }
}  

class derive2 extends base /*3rd class & inherit base class*/ {
   derive2() {
   System.out.println("pintar sekali");
}

public static void main(String ar[]) {
   base b=new base();
   derive c=new derive();
   derive2 d=new derive2();
   }
}  



Output:



Sumber: klik disini dan klik disini

Bookmark and Share

0 komentar:

Posting Komentar