Мне нужно распечатать все общедоступные поля вложенных объектов Java. Эти объекты содержат только данные, никаких методов. На любом уровне дерева объектов (кроме листовых узлов) полями могут быть Карты, Списки, Наборы и массивы. Листовые узлы являются примитивными типами. Вложенные поля должны быть напечатаны в виде строки следующего формата:Библиотека для печати всех открытых полей вложенных объектов Java?
<fieldName1>.<fieldName2>. ... <fieldNameN>==<value>
где:
<fieldName1> -- root (top level) field name
<fieldNameN> -- N-level field name
<value> -- N-level field value.
Любая библиотека там, чтобы решить эту задачу?
Да, отражение, безусловно, правильный ответ здесь. – Zoidberg
Спасибо, да это хороший способ найти поля классов. Но мне также нужно найти значение поля листа. Итак, вопрос: у вас есть объект, имя поля объекта, вложенного на уровне N, - как найти это глубоко вложенное значение поля? – dokondr
Также, если вложенное поле является Map, array или Iterable? Затем вам нужно итератировать все объекты, содержащиеся в этих коллекциях. Итак, как вы видите, для решения этой задачи нужно еще многое сделать ... – dokondr