SORU
25 Aralık 2012, Salı


'Boşluk arasındaki fark, hiç bir parametre?

İki aşırı yöntemleri tanımlayan bir sınıf var

public void handle(Void e) 

protected void handle() 

Belli ki onlar farklı, özellikle handle(Void e) public.

Nasıl ilk yöntem aramak? handle(null) - Bu doğru mu? kullanıyorum

CEVAP
25 Aralık 2012, Salı


Void özel bir sınıf genellikle birincil kullanım geçersiz bir yöntemin dönüş türü temsil etmek için yansıma için kullanılır. javadoc for Void:

Geçersiz sınıf Sınıf nesnesi Java anahtar kelime boşluğu temsil eden bir referans tutmak için uninstantiable tutucu bir sınıftır.

Void sınıf örneği olamaz çünkü, Void tür parametresi, handle(Void e) gibi bir yöntem geçirmek tek değer null.

Void, javadoc aksine iddialara rağmenolabiliraslında Void örneğini başlatmak:

Constructor<Void> c = Void.class.getDeclaredConstructor();
c.setAccessible(true);
Void v = c.newInstance(); // Hello sailor!

Void görmedim dedi "yararlı" türü olduğunu belirtmek için istediğiniz zaman genel bir parametre türü olarak kullanılan "" örneğin: . göz ardı

Callable<Void> ignoreResult = new Callable<Void> () {
    public Void call() throws Exception {
        // do something
        return null; // only possible value for a Void type
    }
}

Callable'In genel parametre dönüş türü, ne zaman Void eskiden olduğu gibi bu, net bir sinyal için okuyucuların kod dönen değeri önemli değil, olsa bile kullanım Callable arayüz gerekli, örneğin kullanarak Executor çerçeve.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bennythecoder

    Bennythecode

    25 Mart 2008
  • jedimasterkyle

    jedimasterky

    11 ŞUBAT 2006
  • UKF Dubstep

    UKF Dubstep

    29 NİSAN 2009