15 Temmuz 2010 Perşembe

Javada class içerisinde 'static' kullanımı.

Javada metodları static yaptığımız zaman bu bize instance yaratmadan o metodu kullanmamızı sağlar. Aynı şekilde bu değişkenler için de geçerli, sınıf içinde bir değişkenin static olması bizim bu değişkene instance yaratmadan erişmemizi sağlar. 
Örneğin:
       public class Araba{
              public static int a;
              public int b;
       }

Araba.a //diyerek a değerine erişebiliriz ancak aynı şekilde Araba.b diyerek b değişkenine erişmemiz mümkün değil. Bunun için bir instance yaratmamız gereklidir.
Araba bmw=new Araba();
bmw.b //diyerek b değişkenine erişebiliriz.

Static metodlara örnek olarak da aşağıdaki örneği verebiliriz

public class Araba {

      static void hiz1()
      {
             System.out.println("hiz1 kullanılıyor");
      }

      void hiz2()
      {
             System.out.println("hiz2 kullanılıyor");
      }
}

//Main içerisinde Araba.hiz1() diyerek hiz1 metoduna instance yaratmadan erişebiliriz ancak hiz2'ye aynı şekilde erişmemiz mümkün değil.

İnner classlar için durum biraz farklıdır. Bir inner class'ı static yapsak da yapmasak da bu class'a instance yaratmadan erişebiliriz. Örneğin:

public class Araba {

      public class Teker1{

      }

      public static class Teker2{

       }
}

Araba.Teker1 ve Araba.Teker2 diyerek her iki class'a erişebiliriz.

Not: Static metodların içerisinde static olmayan değişkenler kullanamayız. Bunun nedeni static olarak tanımlanan herşeyin ilk olarak oluşturulmasıdır. Bu nedenle static bir metodun içerisinde static olmayan bir değişken kullanmaya çalıştığımız zaman o değişken henüz oluşturulmadığından derleyici hata mesajı verecektir.

Hiç yorum yok:

Yorum Gönder