是否可以使用Java Reflection打印父类的属性?

是否可以使用Java Reflection打印出父类的属性。

是的,你可以这样做:

Class parentClass = getClass().getSuperclass(); Field[] fields = parentClass.getDeclaredFields(); for (Field field : fields) { System.out.println("field: " + field.getName()); } Method[] methods = parentClass.getDeclaredMethods(); for (Method method : methods) { System.out.println("method: " + method.getName()); } 

给定适当宽松的安全策略,可以使用reflection打印出任何类/实例的属性。 请参阅如何将setAccessible限制为仅“合法”使用? 进行一些有趣的讨论。