我正在尝试打印有关类方法的信息。我认为这很简单,但每次运行该程序时我都会收到所描述的错误。我不确定我是否应该在这里发布我的所有代码,但我会尽力为您提供相关的内容。所以我在类自定义类中有一个方法,它将打印出该类中的所有方法,如下:
static void displayMethodInfo(Object obj)
{
Class<? extends Object> c = obj.getClass();
Method methods[] = c.getDeclaredMethods();
for (Method m : methods)
{
if(!Modifier.isPrivate(m.getModifiers()))
{
String method = m.toGenericString();
System.out.println(method);
}
}
}
我这样调用它:
Watch w = new Watch();
Watch.displayMethodInfo(w);
主要是.知道是什么原因造成的吗?
最佳答案
“java.lang.NoSuchMethodError watch.main([Ljava/lang/String;)V”意味着您已将“Watch”设置为主类,但您的示例显示“MethodInfoTest”是主类。您正在尝试运行一个没有 main 方法的类:-)
关于Java NoSuchMethodError 打印方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20317796/