Java Reference
In-Depth Information
}
public static void classMethod()
{
System.out.println("Class method");
}
}
class MethodInvocationDemo
{
public static void main(String[] args)
{
try
{
Class<?> clazz = Class.forName("X");
X x = (X) clazz.newInstance();
Class[] argTypes = { String.class };
Method method = clazz.getMethod("objectMethod",
argTypes);
Object[] data = { "Hello" };
method.invoke(x, data); // Output: Instance meth-
od: Hello
method
=
clazz.getMethod("classMethod",
(Class<?>[]) null);
method.invoke(null, (Object[]) null); // Output:
Class method
}
catch (Exception e)
{
System.err.println(e);
}
}
}
Listing4-15 declaresclasses X and MethodInvocationDemo . MethodInvoc-
ationDemo 's main() methodfirstattemptstoload X ,andthentriestoinstantiatethis
classvia newInstance() .Ifsuccessful,theinstanceisassignedtoreferencevariable
x .
Search WWH ::




Custom Search