local variable: Yerel değişkenler metot içerisinde tanımlanmış değerlerdir ve referans olarak verilmeden önce değer atanmalıdır. [code lang=”java”] public class { public static void main(String[] args) { String localVariable01 = "localVariable01"; System.out.println(localVariable01); } } [/code] Örnek kodda localVariable01 değişkenine “localVariable01” değeri atanmasaydı derleme hatası ile karşılaşırdık. Yani String localVariable01; şeklinde olsaydı derleme hatası alırdık. class variable (static variable): Sınıf değişkenler sınıf içerisinde ancak metodun dışında tanımlanan değişkenlerdir ve varsayılan değeri vardır ve referans gösterilebilir. [code lang=”java”] public class { private static int classVariable01; private static String classVariable02; public static void main(String[] args) { System.out.println(classVariable01); System.out.println(classVariable02); } } [/code] instance variable: Örnek değişkenler sınıf içerisinde ancak metodun dışında tanımlanan değişkenlerdir ve varsayılan değeri vardır ve referans gösterilebilir. [code lang=”java”] public class { private int instanceVariable01; private String instanceVariable02; public static void main(String[] args) { System.out.println(instanceVariable01); System.out.println(instanceVariable02); } } [/code] class variable ile instance variable arasındaki fark ikisi de sınıf içerisinde tanımlanıp sınıf içerisindeki hafızada tutulmasına rağmen, – class variable’lar; bir sınıfın tüm nesneleri ve örnekleri için ortakdır yani sadece bir kopyası oluşur. Bu değişkende değişiklik yapılırsa tüm örneklerin değişkenlerinde etkisi görülür. – instance variable’lar; her nesnenin kendi örnek kopyası oluşmaktadır ve değişkenlerde yapılan değişiklikler o sınıfın diğer örneklerine yansımaz. Buradaki tanım farkı ise static anahtar kelimesi ile sağlanmaktadır. ]]>