For Schleife über alle Klassen

Gast #2949407
Lesenswert?

Programmiersprache ist Java. Ich darf aber auch nicht wirklich Arrays 
verwenden. Ist zwar ziemlich sinnlos das ganze, aber was solls.

Kann man nicht irgendwie über das Package iterieren?

Lg
Stefan
#2949431
Lesenswert?

Du kannst nicht über Klassen iterieren. Klassen sind nur Baupläne mit 
den Du Objekte generieren kannst.

Diese Objekte kannst Du wiederum wie Datentypen behandeln und in 
Datenstrukturen verwalten (Array, Liste, Set, Tree). Über diese 
Datenstrukturen kannst Du dann nach belieben iterieren.
#2949634
Lesenswert?

Stefan schrieb:
> Programmiersprache ist Java. Ich darf aber auch nicht wirklich Arrays
> verwenden. Ist zwar ziemlich sinnlos das ganze, aber was solls.
>
> Kann man nicht irgendwie über das Package iterieren?
>
> Lg
> Stefan

http://docs.oracle.com/javase/6/docs/api/java/lang/instrument/Instrumentation.html#getAllLoadedClasses()

Returns an array of all classes currently loaded by the JVM.
Persönliche Seite #2949795
Lesenswert?

Arc Net schrieb:
> Returns an array of all classes currently loaded by the JVM.

Bringt aber nix, weil das nur die sind welche irgendwer schon mal 
geladen hat, heißt aber nicht, dass es nicht noch mehr geben könnte 
außerdem ist das eher für Profiler gedacht.

Stefan schrieb:
> Kann man nicht irgendwie über das Package iterieren?

Nein wie sollte das gehen? Schau dir den Classloadermechanismus an, eine 
Klasse könnte dynamisch nachgeladen werden (z.B. über das Netz), oder 
sogar zur Laufzeit konstruiert werden, es gibt einfach nicht "alle 
Klassen"

Stefan schrieb:
> Programmiersprache ist Java.

Da du leider nicht schreibst was dein "Plan" ist kann man nur mutmaßen, 
es wäre z.B. möglich, wenn alle Klassen die dich interessieren in einem 
JAR liegen über dieses mittels der normalen Javafunktion das 
Inhaltsverzeichnis zu lesen und darüber auf die vorhandenen Klassen zu 
schließen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren