利用java反射重写toString

因项目测试须要,打印出对象的键值对,直接上代码

 1 public String toString() {
 2         Field[] fields = getClass().getFields();
 3         StringBuffer sb = new StringBuffer();
 4         sb.append(getClass().getName() + ":[\n");
 5         for (Field field : fields) {
 6             sb.append("    ");
 7             sb.append(field.getName() + " = ");
 8             try {
 9                 sb.append(field.get(this));
10             } catch (IllegalArgumentException e) {
11                 e.printStackTrace();
12             } catch (IllegalAccessException e) {
13                 e.printStackTrace();
14             }
15             sb.append("\n");
16         }
17         sb.append("]");
18         return sb.toString();
19     }

效果图:

 

posted @ 2015-06-04 18:46  sleepend  阅读(2035)  评论(2编辑  收藏  举报