package eays;
import java.lang.reflect.Constructor;
import java.lang.reflect.Method;
import java.lang.reflect.InvocationTargetException;
/**
* @author 小林信仁
*
*/
public class ClassForName {
/**
* @param msg
*/
public ClassForName(String msg){
System.out.println("Hello :" + msg);
}
public void sayHello(String msg){
System.out.println("Say Hello!" + msg);
}
public static void main(String[] args) throws SecurityException, NoSuchMethodException, ClassNotFoundException, IllegalArgumentException, InstantiationException, IllegalAccessException, InvocationTargetException{
Class classname = Class.forName("eays.ClassForName");
Constructor constructor = classname.getConstructor(String.class);//String.class parameter type
ClassForName classforname =(ClassForName)constructor.newInstance("Test Instructor");
ClassForName classformethod = (ClassForName)classname.getConstructor(String.class).newInstance("Test Instructor2");
Method method = classname.getMethod("sayHello", String.class);
System.out.println(method.invoke(classforname, "Test method"));//invoke method
}
}
1




