Java 反射机制

Java 反射机制主要提供了以下功能:
在运行时判断任意一个对象所属的类。
在运行时构造任意一个类的对象。
在运行时判断任意一个类所具有的成员变量和方法。
在运行时调用任意一个对象的方法。


反射机制常用类:
Class 类:代表一个类。
Field 类:代表类的成员变量(成员变量也称为类的属性)。
Method 类:代表类的方法。
Constructor 类:代表类的构造方法。
Array 类:提供了动态创建数组,以及访问数组的元素的静态方法。

// 查询出所有进行中的活动
		T7046[] result = getValidActivity();
		if (result != null && result.length > 0) {
			for (T7046 data : result) {
				String allClassName = className.replace("@", data.F12);
				try {
					/*1.根据类名得到Class*/
					/*2.根据Class得到它的构造器*/
					Constructor<?> constructor = Class.forName(allClassName).getConstructor(ServiceResource.class);
					/*3.使用类加载的方式创建对象*/
					Object activityObject = constructor.newInstance(serviceResource);
					/*4.获得创建类*/
					Class<? extends Object> activityClass = activityObject.getClass();
					/*5.动态调用指定方法*/
					String temp = (String)activityClass.getMethod("executeActivity", Object[].class).invoke(activityObject, (Object)params);
					if(!StringHelper.isEmpty(temp)){
						message = temp;
					}
				} catch (ClassNotFoundException e) {
					System.out.println("类:"+allClassName+"不存在,活动无法执行!");
					continue;
				}
			}

猜你喜欢

转载自pbd.iteye.com/blog/2338960