Minggu, 11 Desember 2011

CONSTRUCTUR

constructor adalah method spesial punya aturan :
nama constructor sama dengan nama class
tidak punya return type
digunakan untuk mengintansiasi object
hanya mempunyai akses modifier tidak ada keyword lain yang digunakan sebelum nama method pada deklarasi constructor

seperti method constructor juga bisa mempunyai parameter dan throws exception, constructor yang tidak mempunyai parameter disebut default constructor, paling tidak ada satu constructor dalam satu class,kalau constructor tidak dideklarasikan maka java dengan sendiri akan membuatkan default constructor, kalau ada 1 saja constructor dengan parameter dibuat maka java tidak akan mendeklarasikan, jika ingin default constructor dideklarasikan maka harus dideklarasikan secara ekplisit.

contoh default constructor akan dibuat walau tidak dideklarasikan
public class ConstructorTest{
         public void methodSederhana(){
                     System.out.println("Method Sederhana");
         }
        
         public static void main(String[] args){
                     ConstructorTest test = new ConstructorTest();
                      test.methodSederhana();
         }
}

contoh yang akan error jika dikompile karena non default constructor dideklarasi, dan diinisiasi yang default constructor
public class ConstructorNonDefaultTest{
         public ConstructorNonDefaultTest(String test){
                     methodSederhana(text);
        }
       
        public void methodSederhana(String text){
                    System.out.println("method sederhana dengan text : "+text);
        }

         public static void main(String[] args){
                    ConstructorNonDefaultTest test = new ConstructorNonDefaultTest();
                    ConstructorNonDefaultTest test1= new ConstructorNonDefaulTest("test 1");
       }
}

public class ConstructorCallConstructorTest{
           public ConstrutorCallConstructorTest(){
                    this("Constructor Memanggil Constructor");
           }
           public ConstructorCallConstructorTest(String text){
                    methodSederhana(text);
           }
           public void methodSederhana(String text){
                    System.out.println("Method sederhana dipanggil dengan text : " + text);
           }

           public static void main(String[] args){
                      ConstructorCallConstructorTest test = new ConstructorCallConstructorTest();
                     ConstructorCallConstructorTest test1 = new ConstructorCallConstructorTest("ini test");
           }

}

Tidak ada komentar:

Posting Komentar