можно ли использовать Java Reflection для распечатки атрибутов родительского класса.
Можно ли использовать Java Reflection для вывода атрибутов родительского класса?
comment
Вы можете перемещаться по иерархии классов, вы можете отражать атрибуты классов, так почему бы и нет?
- person Jim Blackler   schedule 23.05.2011
Ответы (2)
Да, вы могли бы сделать что-то вроде этого:
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());
}
person
WhiteFang34
schedule
23.05.2011
При соответствующей разрешающей политике безопасности можно распечатать атрибуты любого класса/экземпляра, используя отражение. См. Как ограничить setAccessible только законным использованием? для некоторых интересное обсуждение.
person
Dilum Ranatunga
schedule
23.05.2011