Bir paket yansıma kullanarak tüm sınıflar bulabilir misin? | Netgez.com
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

  • ★ByScrapi★ Designs

    ★ByScrapiâ

    27 AÄžUSTOS 2013
  • EatingIn

    EatingIn

    12 EKİM 2013
  • UberFacts

    UberFacts

    26 EKİM 2013