我是编程新手,这是我的代码
this
这是例外:
线程“主”中的异常java.lang.NoSuchMethodException:first_project.addition.add(int a,int b)() 在java.base / java.lang.Class.getDeclaredMethod(Class.java:2434) 在first_project.My_Class.main(My_Class.java:15)
答案 0 :(得分:3)
Method.getDeclaredMethod
接受方法名称和参数类型作为参数。您必须像这样Method m = addition.class.getDeclaredMethod("add", int.class, int.class);
方法调用也是错误的:
m.invoke(c);
应为:
m.invoke(*instance of addition*, *first param*, *second param*);
相应地替换*instance of addition*
等。
此外,Java使用类似code conventions的类:类名必须以大写字母等开头。
答案 1 :(得分:2)
更改此行:
addition.class.getDeclaredMethod("add(a,b)");
对此:
Method method = addition.class.getDeclaredMethod("add", int.class, int.class);
getDeclaredMethod
以方法名称及其参数类型作为参数。
要调用该方法:
method.invoke(new addition(), a, b);