Посмотрите стандартную библиотеку или технику, чтобы получить довольно-печатное представление OBJECT для Java

Чтобы понять внутренности какого-либо кода или печати дампов при ошибках, я использую pp -подобные функции в Python и Emacs lisp.

Теперь я перехожу на Java и ищу стандартную библиотеку или tecnique, чтобы получить довольно печатное представление OBJECT для Java.

Похоже, что текущая спецификация Java позволяет интроспекции объекта Java во время выполнения. Но интроспекция может быть не столь сильной. m (Object o) нельзя вызвать с помощью нового объекта [] arg?

ПРИМЕЧАНИЕ Я НЕ, смотрящий на декодер исходного кода! Я ищу отладки Java-объектов для работы во время выполнения.

ПРИМЕЧАНИЕ2. Эти вопросы похожи, но не точно такие же:

Ответ 1

Вы можете использовать ReflectionToStringBuilder из Apache Commons Lang библиотека.

Пример:

String dump = ReflectionToStringBuilder.toString(object);

Что касается вашего вопроса:

m (Object o) нельзя вызвать с помощью нового объекта [] arg?

Конечно, массивы Object являются подтипом Object.

Ответ 2

Для быстрого и грязного решения, показывающего вывод объекта Java, вы можете использовать Jackson http://jackson.codehaus.org/, который выведет объект в JSON.