Hi!
Gibt es eine Möglichkeit alle existierenden Java-Klassen anzeigen zu lassen?
Um es etwas näher zu beschreiben. Angenommen ich habe ein Programm wie
dann greift das Programm zur Laufzeit auf alle im Classpath existierenden Verzeichnisse und Jar-Dateien zu (in diesem Fall: rt.jar) und guckt, ob es die Klassen "javax.swing.JFrame" und "javax,swing.JButton" gibt.
Man kann auch prüfen, ob diese Klasse vorhanden ist.
Ich will aber alle Klassen im Package javax.swing erhalten, ohne dessen Namen vorher zu wissen. Und generell will ich alle Klassen aufgelistet haben.
Ist das möglich?
Bisher habe ich im Internet immer nur Beispiele gefunden, wo die Klassen ausgegeben wurden, die aktuell geladen wurden. Also die für das aktuelle Programm zum Ausführen nötig sind.
Ich will aber alle Klassen aufgelistet haben, die mir zur Verfügung stehen.
Grüße
theuserbl
Gibt es eine Möglichkeit alle existierenden Java-Klassen anzeigen zu lassen?
Um es etwas näher zu beschreiben. Angenommen ich habe ein Programm wie
Java:
import javax.swing.*;
public class Test {
public static void main(String[] args) {
JFrame f = new JFrame("Mein Fenster");
JButton b = new JButton("Button");
f.add(b);
}
}
dann greift das Programm zur Laufzeit auf alle im Classpath existierenden Verzeichnisse und Jar-Dateien zu (in diesem Fall: rt.jar) und guckt, ob es die Klassen "javax.swing.JFrame" und "javax,swing.JButton" gibt.
Man kann auch prüfen, ob diese Klasse vorhanden ist.
Java:
public class Test {
public static void main(String[] args) {
String s1 = "javax.swing.JButton";
String s2 = "javax.swing.GibtEsNicht";
System.out.println(existClass(s1));
System.out.println(existClass(s2));
}
public static boolean existClass (String name) {
try {
Class tmp = Class.forName(name);
return true;
} catch (ClassNotFoundException e) {
return false;
}
}
}
Ich will aber alle Klassen im Package javax.swing erhalten, ohne dessen Namen vorher zu wissen. Und generell will ich alle Klassen aufgelistet haben.
Ist das möglich?
Bisher habe ich im Internet immer nur Beispiele gefunden, wo die Klassen ausgegeben wurden, die aktuell geladen wurden. Also die für das aktuelle Programm zum Ausführen nötig sind.
Ich will aber alle Klassen aufgelistet haben, die mir zur Verfügung stehen.
Grüße
theuserbl
Zuletzt bearbeitet: