SORU
24 NİSAN 2012, Salı


Statik yöntemler Java miras?

OkuyordumBir Programcı Kılavuzu Java™ Sertifika DENEMEDEKhalid Mughal tarafından.

Miras bölümde, bu her şeyi açıklıyor

Üyelerin miras yakından beyan bağlıdır erişilebilirlik. Eğer üst sınıf bir üyesi basit adıyla erişilebilir olup olmadığını alt (süper gibi herhangi bir ekstra sözdizimi kullanımı olmaksızın), üye kalıtsal olarak kabul edilir

Ayrıca statik yöntemler miras alınmaz bahseder. Ama aşağıdaki kod perfectlly iyi

class A
{
    public static void display()
    {
        System.out.println("Inside static method of superclass");
    }
}

class B extends A
{
    public void show()
    {
        // This works - accessing display() by its simple name -
        // meaning it is inherited according to the book.
        display();
    }
}

Doğrudan nasıl Sınıf display() B kullanabilir miyim? Hatta daha fazla, B.display() da çalışır.

Kitabın açıklaması sadece örnek için yöntemler geçerli mi?

CEVAP
24 NİSAN 2012, Salı


Erişilebilir tüm yöntemler alt sınıflar tarafından miras alınır.

Güneşten Tutorials Java:

Bir alt sınıf halk devralır ve üst üyeleri, alt sınıf ne olursa olsun korumalı. Eğer alt üst olarak aynı pakette, aynı zamanda üst paket-özel üye devralır. Kalıtsal olarak kullanmak suretiyle, onları değiştirmek, onları gizlemek, ya da yeni üyeler ile tamamlayabilir

Tek fark ile miras statik (sınıf) yöntemleri ve miras statik olmayan (örnek) yöntemleri olduğunu yazdığında yeni bir statik yöntemi ile aynı imza, eski statik yöntem sadece gizli değil, geçersiz.

Geçersiz kılma ve gizleme arasındaki fark page.

Gizleme ve geçersiz kılma arasındaki fark önemli etkileri vardır. Çağrılan yöntemi geçersiz kılınmış sürümünü alt sınıfta. Çağrılan gizli yöntemi sürümü üst veya alt çağrılır bağlıdır

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ciaran Blumenfeld

    Ciaran Blume

    20 NİSAN 2009
  • Friday NightFort

    Friday Night

    15 EYLÜL 2011
  • Manuel Vizcaino

    Manuel Vizca

    27 Mayıs 2008