SORU
12 EKİM 2008, Pazar


Neden sınıftır.() newİnstance "kötü"?

Ryan Delucchi yorum here Tom Hawtin#3'un cevabı: diye sordu

neden sınıftır.() newİnstance""? kötü

kod örneği için yanıt bu

// Avoid Class.newInstance, for it is evil.
Constructor<? extends Runnable> ctor = runClass.getConstructor();
Runnable doRun = ctor.newInstance();

neden Kötü?

CEVAP
12 EKİM 2008, Pazar


Java API belgelerine neden (http://java.sun.com/javase/6/docs/api/java/lang/Class.html#newInstance()) açıklıyor:

Bu yöntem, herhangi bir istisna nullary kurucu tarafından atılan, denetlenen bir özel durum da dahil olmak üzere yayar unutmayın. Bu yöntemin etkili bir şekilde kullanın aksi takdirde derleyici tarafından gerçekleştirilen derleme zamanı özel durum kontrol atlar. Constructor.newInstance Bu yöntem, herhangi bir durum içinde yapıcı (işaretli) tarafından atılan sararak bu sorunu engeller InvocationTargetException.

Diğer bir deyişle, özel durumlar kontrol sistemi yenmek.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Damien Hayes

    Damien Hayes

    11 Mart 2008
  • Jeremy Gallman

    Jeremy Gallm

    11 NİSAN 2012
  • TimMinchinLive

    TimMinchinLi

    23 ŞUBAT 2009