反射机制:
1.概念:反射机制本质上就是实现动态编程机制,可以在运行阶段动态的创建对象,以及动态的调用方法。
2.例如:
int[] equipmentNumbers = {1,3,5,9,11,7,13,14,31,33,35};
for(int i = 0; i < 11; i++){
// 返回参数指定类的class对象
Class c= Class.forName("com.nisco.core.Vision.SignProcess0"+i);//包名类名拼串
Object object = c.newInstance();// 创建并初始化对象
Field equipmentNumber = c.getDeclaredField("equipmentNumbers");// 反射出指定字段
// private 属性必须设置为true;
equipmentNumber.setAccessible(true);
equipmentNumber.set(object,equipmentNumbers[i]);//赋值
equipmentNumber.get(object);//取值
}
Class aClass= Class.forName("com.nisco.core.Vision.SignProcess");
aClass.getConstructor(String.class,int.class);//获取有参构造
aClass.newInstance("xwz",23);//用构造方法传值