-1
我在Java中很新,我试图测试从Stack Overflow本身获得的Java反射示例。Java反射示例
public static String dump(Object o, int callCount) {
callCount++;
StringBuffer tabs = new StringBuffer();
for (int k = 0; k < callCount; k++) {
tabs.append("\t");
}
StringBuffer buffer = new StringBuffer();
Class oClass = o.getClass();
if (oClass.isArray()) {
buffer.append("\n");
buffer.append(tabs.toString());
buffer.append("[");
for (int i = 0; i < Array.getLength(o); i++) {
if (i < 0) {
buffer.append(",");
}
Object value = Array.get(o, i);
if (value.getClass().isPrimitive()
|| value.getClass() == java.lang.Long.class
|| value.getClass() == java.lang.String.class
|| value.getClass() == java.lang.Integer.class
|| value.getClass() == java.lang.Boolean.class) {
buffer.append(value);
} else {
buffer.append(dump(value, callCount));
}
}
buffer.append(tabs.toString());
buffer.append("]\n");
} else {
buffer.append("\n");
buffer.append(tabs.toString());
buffer.append("{\n");
while (oClass != null) {
Field[] fields = oClass.getDeclaredFields();
for (int i = 0; i < fields.length; i++) {
buffer.append(tabs.toString());
fields[i].setAccessible(true);
buffer.append(fields[i].getName());
buffer.append("=");
try {
Object value = fields[i].get(o);
if (value != null) {
if (value.getClass().isPrimitive()
|| value.getClass() == java.lang.Long.class
|| value.getClass() == java.lang.String.class
|| value.getClass() == java.lang.Integer.class
|| value.getClass() == java.lang.Boolean.class) {
buffer.append(value);
} else {
buffer.append(dump(value, callCount));
}
}
} catch (IllegalAccessException e) {
buffer.append(e.getMessage());
}
buffer.append("\n");
}
oClass = oClass.getSuperclass();
}
buffer.append(tabs.toString());
buffer.append("}\n");
}
return buffer.toString();
}
当我想这个我得到错误:
No Class Found and No main function.
您能否提供完整的异常堆栈? –
@elinamohanty问不好的问题将总是吸引downvotes和关闭。我喜欢帮助初学者,发送邮件,查看我的个人资料。如果你得到太多的赞成或关闭,那么你可能会被禁止在将来发布问题 – SpringLearner
检查你的收件箱@SpringLearner –