16 Januari, 2010

Abstract class

o   Sebuah class yang tidak bisa diinstansiasi
o   Sering muncul pada puncak hierarki class object-oriented programming(OOP), mendefinisikan segala type action/tindakan yang mungkin dengan object semua subclass dari class

o   Method abstract
       Method di dalam abstract class tidak mempunyai implementasi
       Untuk membuat abstract method, tulis saja deklarasi method tanpa body dan gunakan keyword abstract
o   Sebagai contoh,
public abstract void someMethod();

Contoh Abstract Class
public abstract class LivingThing {
   public void breath(){
     System.out.println("Living Thing breathing...");
   }
   public void eat(){
     System.out.println("Living Thing eating...");
   }
   /** 
    * abstract method walk 
    * Kita ingin method ini di-overrride oleh subclass dari 
    * LivingThing 
    */
   public abstract void walk();
}

o   Ketika sebuah class meng-extends abstract class LivingThing, diwajibkan meng-override abstract method walk(), jika tidak, subclass tersebut juga akan menjadi abstract class, dan oleh karena itu tidak bisa diinstansiasi
o   Sebagai contoh,
public class Human extends LivingThing {
   public void walk(){
        System.out.println("Human walks...");
   }
}

o   Menggunakan abstract class untuk mendefinisi jenis-jenis yang luas dari behavior yang ada di puncak hirarki class object-oriented programming, dan menggunakan subclassnya untuk menyediakan detail implementasi dari abstract class.


0 komentar:

Posting Komentar