相关疑难解决方法(0)

转储java对象的属性

是否有一个库将以递归方式转储/打印对象属性?我正在寻找类似于Firebug中的console.dir()函数的东西.

我知道commons-lang ReflectionToStringBuilder但它没有递归到一个对象.即,如果我运行以下内容:

public class ToString {

    public static void main(String [] args) {
        System.out.println(ReflectionToStringBuilder.toString(new Outer(), ToStringStyle.MULTI_LINE_STYLE));
    }

    private static class Outer {
        private int intValue = 5;
        private Inner innerValue = new Inner();
    }

    private static class Inner {
        private String stringValue = "foo";
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到:

ToString $ Outer @ 1b67f74 [intValue = 5
innerValue = ToString $ Inner @ 530daa]

我意识到在我的例子中,我可以覆盖Inner的toString()方法,但在现实世界中,我正在处理我无法修改的外部对象.

java reflection dump properties tostring

63
推荐指数
5
解决办法
7万
查看次数

标签 统计

dump ×1

java ×1

properties ×1

reflection ×1

tostring ×1