【工具】使用反射为类快速生成toString方法,反射tostring
分享于 点击 17776 次 点评:159
【工具】使用反射为类快速生成toString方法,反射tostring
使用反射为类快速生成toString方法
为所处位置类打印出相应toString方法public static void main(String[] args) throws ClassNotFoundException {
// 静态方法获取当前类名
String classPath = new Object() {
public String getClassName() {
String clazzName = this.getClass().getName();
return clazzName.substring(0, clazzName.lastIndexOf('$'));
}
}.getClassName();
Class<?> classType = Class.forName(classPath);
StringBuilder sb = new StringBuilder("@Override public String toString() {return \"" + classPath + " [");
for (java.lang.reflect.Field f : classType.getDeclaredFields()) {
sb.append(f.getName() + "=\"+" + f.getName() + "+\", ");
}
sb.append("]\";}");
System.out.println(sb.toString().replaceAll("^([\\s\\S]*),\\s([\\s\\S]*)", "$1$2"));
}
相关文章
- 暂无相关文章
用户点评