SORU
6 ŞUBAT 2009, Cuma


Bir paket yansıma kullanarak tüm sınıflar bulabilir misin?

Belirli bir paket içinde tüm sınıfları veya arabirimleri bulmak mümkün mü? (Çabuk *3 örneğin* şöyle bir bakınca yok gibi görünüyor.)

CEVAP
6 ŞUBAT 2009, Cuma


Sınıf yükleyiciler dinamik yapısı nedeniyle, bu mümkün değildir. Sınıf yükleyiciler sadece sınıflar için isteklerini verdi, bunların yerine sağlayabilir hangi VM söylemek için gerekli değildir, ve bir sınıf dönmek veya bir özel durum var.

Kendi sınıf yükleyiciler yazmak veya sınıf yolları incelemek ve çömlekler olup, Olası bu bilgileri bulmak için. Bu, yansıma olmasa da dosya işlemleri ile yapılacaktır. Hatta size bu konuda yardımcı olabilir kütüphaneler olabilir.

Eğer üretilen veya uzaktan teslim sınıflar varsa, o sınıfları bulmak mümkün olmayacaktır.

Normal yöntemi yerine bir yerde bir dosya, ya da farklı bir sınıfta onları referans erişim ihtiyacınız sınıfı kaydetmek için. Veya sadece isim koymaya geldiğinde Kongre kullanın.

Ek: The Reflections Library geçerli bir sınıf içinde ders görünmesini sağlar. Bir paketteki tüm sınıflar için kullanılabilir:

 Reflections reflections = new Reflections("my.project.prefix");

 Set<Class<? extends Object>> allClasses = 
     reflections.getSubTypesOf(Object.class);

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • MW Technology

    MW Technolog

    28 EKİM 2009
  • Submissions101

    Submissions1

    23 ŞUBAT 2007
  • The Warp Zone

    The Warp Zon

    24 AĞUSTOS 2007