Welcome to My Blog 👋

Java, Spring Framework, Microservices, Docker, Kubernetes, AWS and Others 🚀
Follow Me

Java - Static Anahtar Kelimesi



  December 25, 2018    Labels:,,,,,,, 

Java nesne yönelimli programlama dilidir. Java'da oluşturulan nesneler belleğin heap bölgesinde oluşturulur. Java'da bir sınıftan üretilen her nesne için heap bölgesinde ayrı bir alana veri yazılır. Yani Java'da aynı class'tan üretilen tüm objeler birbirinden farklı veriler ve metotlar içerir. Ancak tüm nesnelerde aynı üye kullanılmasını istersek o üyeyi static tanımlayabiliriz. Örneğin bir sınıfın kaç adet nesnesinin oluşturulduğunu tutmak istersek bu durumda static değişken kullanmalıyız.
Eğer bir sınıf içerisindeki bir üyeyi static tanımlamak istersek o sınıfıntan üretilen her nesne için o üye sadece bir tane olur. Örneğin Urün sınıfında stok değişkenini static tanımlarsak o stok değişkeni sadece 1 tane olur ve tüm nesneler o değişkeni kullanır. Peki hangi durumlarda sınıf üyelerimizi static tanımlamalıyız diye soracak olursanız eğer bir değişkenin değeri her üretilen nesne için farklı olmayacaksa tüm nesneler için aynı olacaksa o değişken static olmalıdır. Aynı şekilde bir metot tüm nesneler için aynı çıktıyı verecekse o değişken de static tanımlanmalıdır. Ayrıca static değişken ve metotları kullanmak için sınıftan bir nesne yaratmamıza gerek yoktur sadece sınıf adı ile erişim gerçekleştirebiliriz. Ancak dikkat edilmesi gereken bir nokta da eğer bir metot static tanımlanmış ise o metot içerisinde bir nesne yaratmadığımız herhangi bir class'ın static olmayan üyesine erişemeyiz. Ayrıca kendi class'ı içerisindeki static olmayan metot ve değişkenlere de erişemeyiz. Çünkü sınıf ve nesne kavramı ayrı şeylerdir. Static olmayan sınıf üyeleri aslında var olmayan şeylerdir ve var olmayan bir şeye var olan yani static olan bir üyeden erişimin yapılamaz.

public static int stok;
public static void stoktaVarMi(){}




No comments:

Post a Comment