Get super class and all its declared methods in Java
Description
The following code shows how to get super class and all its declared methods.
Example
/*ww w . j a v a2 s .c o m*/
import static java.lang.System.out;
import java.lang.reflect.Method;
public class Main {
public static void main(String... args) {
try {
Class<?> c = Class.forName("java.lang.String");
printMethods(c);
Class parent = c.getSuperclass();
while (parent != null) {
printMethods(parent);
parent = parent.getSuperclass();
}
// production code should handle this exception more gracefully
} catch (ClassNotFoundException x) {
x.printStackTrace();
}
}
private static void printMethods(Class c) {
out.format("Methods from %s%n", c);
Method[] meths = c.getDeclaredMethods();
if (meths.length != 0) {
for (Method m : meths)
out.format(" Method: %s%n", m.toGenericString());
} else {
out.format(" -- no methods --%n");
}
out.format("%n");
}
}
The code above generates the following result.