Tengo una aplicación como archivo JAR con muchas dependencias. Por alguna razón, necesito descompilar una de las bibliotecas y abrirla con Eclipse. Para una interfaz dada en el proyecto, ¿hay alguna forma de encontrar la clase (s) que la implementa? Puede darse el caso de que la interfaz se haya implementado en otra biblioteca que aún no he descompilado. ¿Es posible hacer esto para este tipo de clases?
88
Pruebe Ctrl+ Tdespués de seleccionar el nombre de la clase; debería funcionar en Java Perspective.
fuente
Puede "Mostrar jerarquía de tipos" en el elemento (haga clic derecho para elegir esta opción o presione F4cuando el elemento esté resaltado) *.
Sin embargo, esto solo enumerará los elementos de los proyectos que se refieren ("dependientes"). No en otros.
Entonces, si ha descompilado un frasco y hay otro frasco que no ha descompilado, las implementaciones (de la interfaz) en ese frasco no aparecerán en la lista.
Además, digamos que ha descompilado un jar como proyecto y hay otro proyecto que se refiere al jar, y no al proyecto descompilado, las implementaciones en ese tampoco se enumerarán.
Por lo tanto, tendrá que descompilar todos los archivos jar y agregarlos como proyectos (y agregar referencias a través de "Java Build Path") para asegurarse de que se enumeran todas las implementaciones en los archivos jar de su elección.
* Jerarquía de tipo rápido, ctrl + T mostrará una estructura similar en un tipo de panel de información sobre herramientas / autocompletar. Pero la jerarquía de tipos completa es más útil para el tipo de análisis que pretende realizar.
fuente
Hay botones de opción "Implementadores" en Java Search.
fuente
O haga clic con el botón derecho y seleccione
Quick Type Hierarchy
un menú desplegable para ampliar interfaces e implementar clases.fuente
Ctrl + H (Opción de búsqueda) Abra la perspectiva de búsqueda de Java e ingrese el nombre de la interfaz, haga clic en el botón de opción Implementadores y encontrará qué clases implementan una interfaz en particular. Igual que la respuesta de stackexchanger anterior
fuente
Seleccione el nombre de la clase, luego 'F4' en Eclipse (entorno Windows)
fuente