12 Januari, 2010

Pewarisan (inheritance)


Semua class dalam Java, termasuk class yang membangun Java API, merupakan subclass dari superclass Object.

Superclass            
                class yang letaknya di atas class tertentu di dalam hierarki.
Subclass                
                class yang letaknya di bawah class tertentu    di dalam hierarki.

Keuntungan penggunaan Inheritance dalam OOP : Reusability
       Ketika behavior(method) dideklarasikan dalam superclass, behavior tersebut otomatis diwariskan ke seluruh subclass
       Jadi, Anda dapat meng-enkode method hanya sekali dan method tersebut dapat digunakan oleh seluruh subclass
       Sebuah subclass hanya perlu mengimplementasikan perbedaan antara dirinya sendiri dan parent-nya

       Untuk mengambil sebuah class, gunakan keyword extends.
       Untuk lebih jelasnya, mari buat class parent sederhana, misalkan kita mempunyai class parent bernama Person.

public class Person {
   protected String name;
   protected String address;
   /**
    * Default constructor 
    */
   public Person(){
         System.out.println(“Inside Person:Constructor”);
         name = ""; address = "";
   }
   . . . .
}

       Sekarang, kita buat class lain bernama Student
       Karena murid juga termasuk orang, kita putuskan untuk meng-extend class Person, sehingga kita dapat mewariskan semua properti dan method yang telah ada di class Person.
       Untuk itu, kita bisa menulis :

public class Student extends Person {
   public Student(){
         System.out.println(“Inside Student:Constructor”);
   }
   . . . .
}

       Untuk memperjelasnya, perhatikan kode dibawah ini,

public static void main( String[] args ){
   Student anna = new Student();
}

       Dalam kode ini, kita membuat sebuah object dari class Student. Hasil dari program adalah:

Inside Person:Constructor
Inside Student:Constructor




0 komentar:

Posting Komentar