Friday, November 09, 2012

Modifier

Modifier: static, protected

Modifier merupakan prefiks  kata kunci  yang digunakan untuk menentukan bagaimana sebuah class, atau method beroperasi.

Terdapat beberapa modifier yang akan kita bahas disini, yaitu public, private, static, abstract, final.  


static


Diterapkan terhadap Class, Method, Variable .
Modifier static akan membuat entitas yang disemati static akan menjadi entitas tunggal, yang mana apabila telah ditentukan nilainya di salah satu bagian program, maka nilai terakhir yang ditentukan itulah yang berlaku.





Sebuah variable dengan static modifier, di dalam Class, berarti hanya akan merujuk pada satu variabel tersebut, tidak memperhitungkan seberapa banyak objek yang dideklarasikan. Demikian juga untuk class.

Contoh:

public class kelas3{
 static int x = 1;
 public kelas3()
 {
   x++;
 }
}

kelas3 kls1 = new kelas3();
System.out.print("ins 1 :" + String.valueOf(kls1.x) + "\n");
kelas3 kls2 = new kelas3();
System.out.print("ins 2: " + String.valueOf(kls2.x));
Hasil:
Ins 1: 2
Ins 2: 3





Protected


Diterapkan terhadap  Method, Variable



Modifier protected akan membuat fitur sebuah class tersedia bagi class-class lainnya, tidak saja bagi class yang ada di dalam package yang sama, tetapi juga package yang berbeda HANYA melalui Inheritance

Package project1
public class TestUmum{
void  protected Pilih()
 {
   x++;
 }
}


Package project2
Import project1.TestUmum;
public class testA extends TestUmum{
void Eksekusi()
 {
   Pilih(); // -> Tidak Error
  TestUmum tu = new TestUmum();
  tu.Pilih();  //X Compile Error
 
 }
}




Abstract


Diterapkan terhadap Class, Method .



Modifier abstract digunakan untuk mendefinisikan fondasi watak sebuah class untuk diterapkan di class-class yang menerapkannya.

Method bertipe abstract, tidak mempunyai implementasi di dalam Classnya, dan hanya bisa didefinisikan di dalam Class abstract. dan class abstract tidak bisa diinstansiasi, dan hanya bisa diturunkan


public  abstract class kelas3{
abstract void test1();
Void test2(){
    system.out.println(“test”); 
};
}


Kelas 3  kls = new Kelas3();  //X salah






public  abstract class kelas4 extends kelas3{  Valid


No comments: