SORU
24 Mart 2009, Salı


Ben eğer bir yöntemin dönüş türü Void ise iade ne? (Boşluk yok!)

Java Jenerik kullanımı nedeniyle bir işlevin dönüş türü olarak Void sahip uygulamak zorunda sona erdi:

public Void doSomething() {
    //...
}

derleyici ve ben geri dönmek istiyorbir şey. Şimdilik sadece null ama eğer bu iyi uygulama kodlama olup olmadığını merak ediyorum dönüyorum...

AyrıcaVoid.class, , *, *7voidVoid.TYPE, hiç dönüş yok, ama hiç işe yaramıyor hepsini denedim. (Daha fazla ya da daha az bilinen nedenlerle) (ayrıntılar için this answer)

  • Eğer bir işlevin dönüş türü Void eğer geri dönmek için ne yapmam gerekiyor?
  • Void sınıf genel ne faydası var?

DÜZENLEME:Sadece downvotes yedek: soruyorumVoıd, değilvoıd. Sınıf 10*,*değilayrılmış void anahtar kelime.

CEVAP
24 Mart 2009, Salı


Eğer bir işlevin dönüş türü Void olmalıdır eğer geri dönmek için ne yapmam gerekiyor?

return null kullanın. Void örneği olamaz ve sadece void Class<T> türü için bir yer tutucudur.

Boşluğun anlamı ne?

Yukarıda da belirtildiği gibi, bu bir yer tutucu. Void eğer, örneğin, yansıma void dönüş türü ile bir yöntem aramak için kullanın yoksa geri alırsın. (Teknik olarak, geri alacaksın Class<Void>.) Eğer Callable<T> bir stratejisinin eğer istiyorsan bu doğrultuda diğer çeşitli kullanımları vardır.

Java jenerik kullanımı nedeniyle bu işlevi uygulamak zorunda sona erdi

Bir şey olursa bu imza ile bir yöntemi uygulamak için gerekirse API ile funky olabileceğini söyleyebilirim. Ne istediğinizi yapmak için daha iyi yollar var olup olmadığını dikkatli bir şekilde (belki bir farklı daha fazla ayrıntı sağlayabilir, takip soru?) düşünün. Bu sadece geldi beri biraz şüpheleniyorum, "jenerik olarak kullanılması nedeniyle".

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • HowtoDrawAndPaint

    HowtoDrawAnd

    24 EKİM 2010
  • justintimberlakeVEVO

    justintimber

    2 EYLÜL 2009
  • MysteryGuitarMan

    MysteryGuita

    16 HAZİRAN 2006