Tengo un problema específico, que Eclipse resuelve perfectamente, pero necesito una solución programática. Lo que quiero hacer es obtener la "jerarquía de tipos" de cualquier clase que proporcione. Eclipse muestra una solución al presionar Ctrl + T, pero ¿cómo lo consigue? ¿Hay alguna API disponible para que pueda usarla?Obteniendo la jerarquía Clase en Java?
Respuesta
Java tiene una API de reflexión que puede usar para determinar la clase base de cualquier clase que tenga, así como las interfaces que implemente esa clase en particular. Sin embargo, determinar qué clases heredan de esa clase será un poco más difícil. La API de reflexión también te permite hacer muchas otras cosas, como determinar qué son los miembros de esa clase, e incluso llamar a los métodos de esa clase y más.
public void DisplaySuperClass(Class c)
{
System.out.println(c.getSuperclass().getName());
}
Se puede utilizar de reflection API el fin de obtener información sobre los tipos en tiempo de ejecución de Java.
Por ejemplo, puede usar Class.getSuperclass() para recorrer el árbol de tipos hacia arriba y buscar los padres de una clase.
Sin embargo, no hay una manera fácil de encontrar todas las subclases de una clase. Para esto tendría que cargar todas las clases en su classpath (que puede ser muchos miles) y construir este árbol usted mismo, posiblemente a través de un ClassLoader
personalizado (y solo si es resistente al dolor que desea ir allí)
Gracias ... fue realmente útil ... :) – Sonam
- 1. Obteniendo una jerarquía de llamadas en java
- 2. Obteniendo typeof en Java
- 3. ¿Cómo se muestra la jerarquía de árbol en Java?
- 4. Jerarquía de clase de Android anotada
- 5. Términos de jerarquía de clase, ancestro vs. clase padre
- 6. Java: Spring security 3 Jerarquía de roles
- 7. Actualizaciones polimórficas en una jerarquía de clase inmutable
- 8. fundamento detrás de la jerarquía de excepciones de Java
- 9. Java: limitar a clases de jerarquía?
- 10. DUnit prueba la jerarquía
- 11. XPath con elemento opcional en la jerarquía
- 12. Obteniendo el lenguaje OS en java
- 13. ¿Usar la jerarquía en findContours() en OpenCV?
- 14. Obteniendo una imagen de Mathematica en Java
- 15. obteniendo nietos de xml en java
- 16. Obteniendo la marca de tiempo de compilación de una clase Java
- 17. Obteniendo información de la ventana activa en Java
- 18. Obteniendo respuesta de la línea de comando en Java
- 19. Error de compilación de Eclipse: la jerarquía del tipo 'Nombre de clase' es incoherente
- 20. aplicación genere Java diagrama de jerarquía de clases
- 21. cómo usar la clase anidada en otra clase en java?
- 22. Jerarquía en Qt [C++]
- 23. ¿Cómo inspecciono la jerarquía de clases de Python?
- 24. Reemplazar un UIViewController en la jerarquía UINavigationController
- 25. Obteniendo la ubicación de la carpeta System32 con java
- 26. C# - Obteniendo el valor de propiedad de la clase secundaria
- 27. Obteniendo la URL de la página de llamada Java
- 28. Obteniendo el nombre de una clase hija en la clase padre (contexto estático)
- 29. lista plana a la jerarquía
- 30. Obteniendo el nombre de la clase de una instancia
Gracias ... fue realmente útil ... :) – Sonam
@ user599584: Si le gustó la respuesta y respondió su pregunta, debe 'aceptarla' haciendo clic en la marca de verificación en el lado de la respuesta. – Avi