Java boş bir başvuru statik alanlar | Netgez.com
SORU
20 Temmuz 2012, Cuma


Java boÅŸ bir baÅŸvuru statik alanlar

Java static üyeler (static alanları veya 3* *yöntemleri) kendi sınıfı yerine, bu sınıfın nesneleri ile ilişkilidir. Aşağıdaki kodu null başvuru statik bir alana erişmeye çalışır.

public class Main
{
    private static final int value = 10;

    public Main getNull()
    {
        return null;
    }

    public static void main(String[] args)
    {
        Main main=new Main();
        System.out.println("value = " main.getNull().value);
    }
}

main.getNull() null döner olsa da çalışır ve görüntüler value = 10. Bu kodu nasıl çalışır?

CEVAP
20 Temmuz 2012, Cuma


Bu davranış Java Language Specification belirtilen:

bir null başvuru özel durumu neden olmadan (static) sınıf değişken erişmek için kullanılabilir.

Daha fazla ayrıntı, bir Primary.staticField şöyle çalışır (vurgu benim) gibi static field evaluation, - senin durumunda, Primary = main.getNull():

  • Birincil ifade deÄŸerlendirilirsonuç atılır. [...]
  • Alan ise boÅŸ olmayan nihai bir alansonuç İlköğretim ifadenin türü, sınıf veya arabirim belirtilen sınıf deÄŸiÅŸken deÄŸeri.[...]

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Living Waters

    Living Water

    9 AÄžUSTOS 2006
  • Paulo Bautista

    Paulo Bautis

    21 Aralık 2008
  • Rozetked | Обзоры

    Rozetked | Ð

    5 AÄžUSTOS 2011