私は簡単な質問があります。 String.TYPE
をparameterType
としてgetDeclaredMethod()
にしたいが、見つけられない。例えば、長いデータ型の場合はLong.TYPE
だが、文字列型の場合は似ていない。 これについて何人か助けてもらえますか? おかげJava getDeclaredMethod()パラメータ文字列パラメータの型
Object newClass;
newClass = Class.forName(cls.getName()).getConstructor().newInstance();
for (Method m : cls.getClass().getMethods())
if (m.getName().startsWith("get") && m.getParameterTypes().length == 0) {
try {
//final Object r = m.invoke(cls);
String MethodName=m.getName().replace("get","");
if (m.getReturnType().equals(Long.TYPE)){
// Class<?> c = Class.forName("class name");
}else
{
String value =this.getString(j,MethodName);
Method method = cls.getDeclaredMethod (MethodName, String);//Here I need Parameter Type for string imput parameter
method.invoke (newClass, value);
}
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
// do your thing with r
}
私は使用することをお勧めします。あなたは.TYPEに入る必要はありません。 – cody123