Author:xushuyi
public class TestReflect {
// Car 是一个纯javaBean 类 同时包含一个普通方法instence()
public static Car initDefaultConst() throws Exception{
//通过类装载器获取Car类对象
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
Class clazz = classLoader.loadClass("com.sinosoft.reflect.Car");
//获取类的默认构造器对象并通过它实例化Car
Constructor constructor = clazz.getDeclaredConstructor((Class[])null);
Car car = (Car) constructor.newInstance();
//通过反射方法设置属性
Method setBrand = clazz.getMethod("setBrand", String.class);
setBrand.invoke(car, "红旗");
Method setColor = clazz.getMethod("setColor", String.class);
setColor.invoke(car, "黑色");
Method setMasSpeed = clazz.getMethod("setMasSpeed", String.class);
setMasSpeed.invoke(car, "100");
return car;
}
public static void main(String[] args) throws Exception {
Car car = initDefaultConst();
car.instence();
}
}