Java Statik Yöntemi, Değişken ve Örnekli Blok

İçindekiler:

Anonim

Statik şunlar olabilir:

  1. Statik Değişkenler
  2. Statik Yöntemler
  3. Statik Kod Blokları.

Önce statik değişkenlere ve statik yöntemlere bakalım.

Java'da Statik Değişken nedir?

Java'daki statik değişken , sınıfa ait olan ve yürütmenin başlangıcında yalnızca bir kez başlatılan değişkendir. Nesneye (örneğe) değil sınıfa ait bir değişkendir. Statik değişkenler, yürütmenin başlangıcında yalnızca bir kez başlatılır. Bu değişkenler, herhangi bir durum değişkeninin başlatılmasından önce ilk olarak başlatılacaktır.

  • Sınıfın tüm örnekleri tarafından paylaşılacak tek bir kopya
  • Statik bir değişkene doğrudan sınıf adıyla erişilebilir ve herhangi bir nesneye ihtiyaç duymaz.

Sözdizimi:

< class-name>. 

Java'da Statik Yöntem Nedir?

Java'da statik yöntem nesneye değil sınıfa ait bir yöntemdir. Statik bir yöntem yalnızca statik verilere erişebilir. Nesneye (örneğe) değil sınıfa ait bir yöntemdir. Statik bir yöntem yalnızca statik verilere erişebilir. Statik olmayan verilere (örnek değişkenleri) erişemez.

  • Statik bir yöntem yalnızca diğer statik yöntemleri çağırabilir ve ondan statik olmayan bir yöntemi çağıramaz.
  • Statik bir yönteme doğrudan sınıf adıyla erişilebilir ve herhangi bir nesneye ihtiyaç duymaz.
  • Statik bir yöntem zaten "bu" veya "süper" anahtar kelimelere atıfta bulunamaz

Sözdizimi:

< class-name>. 

Not: Ana yöntem statiktir, çünkü herhangi bir somutlaştırma gerçekleşmeden önce bir uygulamanın çalışması için erişilebilir olması gerekir.

Biraz alıştırma yaparak statik anahtar kelimelerin nüanslarını öğrenelim!

Örnek: Statik değişkenler ve yöntemler nasıl çağrılır

Adım 1) Aşağıdaki kodu bir düzenleyiciye kopyalayın

public class Demo {public static void main (String args []) {Öğrenci s1 = yeni Öğrenci ();s1.showData ();Öğrenci s2 = yeni Öğrenci ();s2.showData ();//Student.b++;//s1.showData ();}}sınıf Öğrenci {int a; // sıfıra başlatıldıstatik int b; // oluşturulan her nesne için değil, yalnızca sınıf yüklendiğinde sıfır olarak başlatılır.Öğrenci(){// Yapıcı, statik değişken b'yi artırıyorb ++;}public void showData () {System.out.println ("a Değeri =" + a);System.out.println ("b değeri =" + b);}// public statik boşluk artışı () {// a ++;//}}

Adım 2) Kodu kaydedin ve derleyin. Kodu java Demo olarak çalıştırın .
Adım 3) Beklenen çıktı aşağıda gösterilir


Aşağıdaki diyagram, referans değişkenlerin ve nesnelerin nasıl oluşturulduğunu ve statik değişkenlere farklı örnekler tarafından nasıl erişildiğini gösterir.


Adım 4) SınıfAdı.Variable_Name sözdizimi kullanılarak sınıfın dışından statik bir değişkene erişmek mümkündür . Yorumsuz satır # 7 ve 8. Kaydedin, Derleyin ve Çalıştırın. Çıkışı gözlemleyin.

Value of a = 0Value of b = 1Value of a = 0Value of b = 2Value of a = 0Value of b = 3
Adım 5) 25, 26 ve 27 numaralı satırların açıklamasını kaldırın. Kaydedin, Derleyin ve Çalıştırın.
error: non-static variable a cannot be referenced from a static context a++;

Adım 6) Hata =? Bunun nedeni , java statik sınıf yöntemi " artış " dan " a " örnek değişkenine erişmenin mümkün olmamasıdır .

Java'da Statik Blok Nedir?

Statik blok bir sınıf ilk JVM içine yüklendiğinde idam edilecek bir Java sınıf içinde ifadenin bir bloktur. Bir statik blok statik veri üyeleri başlatmak için yardımcı örnek üyeleri başlatmak için sadece kurucular yardım gibi.

class Test{static {//Code goes here}}

Aşağıdaki program java statik blok örneğidir.

Örnek: Statik bloğa nasıl erişilir

public class Demo {statik int a;statik int b;statik {a = 10;b = 20;}public static void main (String args []) {System.out.println ("a Değeri =" + a);System.out.println ("b değeri =" + b);}}

programın aşağıdaki çıktısını alacaksınız.

Value of a = 10Value of b = 20