Create an object from a stringTag(s): Language
In this HowTo, we instantiate an object from its classname and pass a parameter to the constructor. And then, we are calling a method dynamically.
public class Test {
public static void main(String args[]) {
try {
String name = "java.lang.String";
String methodName = "toLowerCase";
// get String Class
Class cl = Class.forName(name);
// get the constructor with one parameter
java.lang.reflect.Constructor constructor =
cl.getConstructor
(new Class[] {String.class});
// create an instance
Object invoker =
constructor.newInstance
(new Object[]{"REAL'S HOWTO"});
// the method has no argument
Class arguments[] = new Class[] { };
// get the method
java.lang.reflect.Method objMethod =
cl.getMethod(methodName, arguments);
// convert "REAL'S HOWTO" to "real's howto"
Object result =
objMethod.invoke
(invoker, (Object[])arguments);
System.out.println(result);
}
catch (Exception e) {
e.printStackTrace();
}
}
}
mail_outline
Send comment, question or suggestion to howto@rgagnon.com
Send comment, question or suggestion to howto@rgagnon.com