Announcement

Collapse
No announcement yet.

alle Klassen aus einem Packet laden

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • alle Klassen aus einem Packet laden

    Hallo,

    ist es möglich zu einem Package alle Klassen zu ermitteln. Damit ich dann von jeder Klasse aus diesem Packet genau eine Instaz erzeugen kann. Ich dachte ich versuche es mal mit der Klasse java.lang.Package aber Fehlanzeige von der kann ich mir nur SubPackete geben lassen.

    Aber vielleicht weiss ja einer von euch wie ich mein Problem lösen kann. Das muss doch irgendwie gehen.

    Vielen Dank schon mal,

    Christian

  • #2
    Hallo Christian,
    etwas ähnliches wollte ich vor kurzer Zeit auch tun, habe mich aber eines besseren belehren lassen.
    Die kurze Antwort ist: Geht nicht.
    Die längere:
    Die Java VM verwendet ihren ClassLoader um Klassen dynamisch zu laden. Das heißt andersherum auch, dass die VM zur Laufzeit gar nicht weiß, was für Klassen in einem Package sind - und somit die von dir gewünschte Liste nicht erzeugen kann.
    Lösung?
    Ich für meine Zwecke habe auf eine elegante generische Lösung verzichtet und mir selbst eine Funktion gemacht, die einen String nimmt und ein Objekt der gleichnamigen Klasse zurückgibt. Nicht elegant, aber funktioniert.
    Ich weiß nicht, was genau du damit vor hast, aber "genau eine Instanz von jeder Klasse" hört sich sehr nach einem Singleton-Pattern an.

    Comment

    Working...
    X