¿Analizar el archivo Jar y encontrar relaciones entre clases?

¿Cómo detectar si la clase del archivo jar está extendiendo otra clase o si hay llamadas de método a otros objetos de clase u otros objetos de clase creados? y luego establecer qué clase extiende qué clase y qué clase llama métodos de qué clase.

Estoy usando Classparser para analizar el jar. aquí es parte de mi código:

        String jarfile = "C:\\Users\\OOOO\\Desktop\\Sample.Jar";

        jar = new JarFile(jarfile);
        Enumeration<JarEntry> entries = jar.entries();
        while (entries.hasMoreElements()) {
            JarEntry entry = entries.nextElement();
            if (!entry.getName().endsWith(".class")) {
                continue;
            }

            ClassParser parser = new ClassParser(jarfile, entry.getName());
            JavaClass javaClass = parser.parse();

Respuestas a la pregunta(2)

Su respuesta a la pregunta