无论参数如何都要获取方法

Em *_* Ae 5 java reflection

我试图获取方法,无论该方法采用什么参数(截至目前没有方法重载,将来也不会).我能提出的唯一可能的解决方案是

private Method getMethod(Class<?> clas, String methodName) {
    try {
        Method[] methods = clas.getMethods();
        for (Method method : methods) {
            if (method.getName().equalsIgnoreCase(methodName)) {
                return method;
            }
        }
    } catch (SecurityException e) {
        e.printStackTrace();
    }
    return null;
}
Run Code Online (Sandbox Code Playgroud)

我想问的是,有没有办法获取方法,无论其参数如何?我在看,clas.getMethod ("methodName", parameters)如果我null在那里提供它将尝试获取一个没有参数的方法.哪个不是没有案例.

有任何想法吗 ?

编辑 感谢大家的投入.就我而言,我知道无论如何都只有一种方法.我使用的原因ignoreCase是因为输入将来自开发人员(在其他团队中),他将提供名称作为硬编码字符串.因此,为了防止事情泄漏,我采用了安全的方法.

aio*_*obe 1

不,你已经做到的方式就是正确的方式。方法由其签名来标识,签名包括名称和参数类型。