Gibt es in Java eine Möglichkeit, die JDK-Bibliotheken zu verwenden, um die in einer anderen Klasse implementierten privaten Klassen zu ermitteln? Oder brauche ich so etwas wie asm?Kann ich eine Java-Klasse 'deklarierte innere Klassen mit Reflektion entdecken?
34
A
Antwort
46
Class.getDeclaredClasses() ist die Antwort.
4
Ich denke, das ist was du willst: Klasse. getClasses().
6
package com.test;
public class A {
public String str;
public class B {
private int i;
}
}
package com.test;
import junit.framework.TestCase;
public class ReflectAB extends TestCase {
public void testAccessToOuterClass() throws Exception {
final A a = new A();
final A.B b = a.new B();
final Class[] parent = A.class.getClasses();
assertEquals("com.test.A$B", parent[0].getName());
assertEquals("i" , parent[0].getDeclaredFields()[0].getName());
assertEquals("int",parent[0].getDeclaredFields()[0].getType().getName());
//assertSame(a, a2);
}
}
Verwandte Themen
- 1. Wie vergleiche ich Klassen mit Reflektion?
- 2. Dozer Mapping innere Klassen
- 3. Wie verwende ich innere Klassen in PHP?
- 4. Kann ich mit VB.NET deklarierte Variablen in einer Klasse überschreiben?
- 5. Wie instanziiert innere Klasse mit Reflektion in Java?
- 6. Innere Klassen: Android vs Java
- 7. Java innere Klassen Methode Zugriff
- 8. Innere Klassen als Quelldaten-Repositories
- 9. C++ Typname und innere Klassen
- 10. Sind nicht deklarierte Klassen in Java öffentlich?
- 11. Wie kann ich eine innere Klasse weiterleiten?
- 12. anonyme innere Klassen für Tasten
- 13. Statische innere Klassen in scala
- 14. Innere Klassen Vererbung in Kotlin
- 15. anonyme innere Klassen Innerhalb Methoden
- 16. Warum verwenden wir innere Klassen?
- 17. Java innere Klassen in C#
- 18. C# Buddy-Klassen/Meta-Daten und Reflektion
- 19. Warum lädt meine Reflektion seltsame Klassen?
- 20. Wie kann man eine mit @IBAction deklarierte Schaltfläche ausblenden?
- 21. Wie kann ich Klassen in einem bestimmten Paket in Python entdecken?
- 22. Generische typisierte innere Klassen in Java
- 23. Nosetests nicht sehen Test Klassen, die Unittest entdecken tut
- 24. Marionette - Eine deklarierte Klasse kann nicht gefunden werden
- 25. Warum kann Diamond nicht auf anonyme innere Klassen schließen?
- 26. Java innere Klassen Dateinamen zu lang
- 27. Kann ich eine Instanz der äußeren Klasse mithilfe der Reflektion des inneren Klassentyps abrufen?
- 28. Casting-Fehler mit Reflektion
- 29. Festlegen von Eigenschaften mit Reflektion auf statischen Klassen
- 30. PHP Builder Muster ohne innere Klassen