【发布时间】:2020-11-12 20:50:42
【问题描述】:
class MethodFinder {
public static String findMethod(String methodName, String[] classNames) {
for(String cn: classNames){
if(cn.getMethods() == methodName){
return methodName.getName();
}
}
}
}
实现一个方法,该方法将通过名称查找所提供方法的类。该方法接受两个参数,方法名和类名数组,其中:
methodName 是需要查找的方法的全称;
classNames 包含一个具有给定名称的方法的类。
它应该返回具有给定名称的方法的类的完全限定名称。
例如,方法名称是 abs,可能的类是 String、StringBuffer 和 Math。
String 和 StringBuffer 没有名为 abs 的方法。所以他们不是我们要找的班级。 Math 类有一个名为 abs 的方法。该方法应返回 Math 类的完全限定名称,在这种情况下为 java.lang.Math。
【问题讨论】:
-
我不明白这个问题。你有一个类名数组,这些是完全合格的吗?不确定 cd.getMethods() 有什么作用。
-
你能提供一个minimal reproducible example 正确的输入和预期的输出吗?此外,您显示的代码甚至无法编译。另外请向我们解释您在哪里以及遇到了什么问题
-
对于反射,我们使用
Classobject getMethods()。我觉得第二个参数应该是Class[] classnames
标签: java class reflection