Java SE__通过反射创建类并通过反射执行实例方法

Java的反射机制可以通过类的信息去创建类,并执行类中的方法。

示例代码:

Reflect_Setter 类

public class Reflect_Setter {
	public int a;
	{
		a = 1;
	}

	public int getA() {
		System.out.println("通过反射调用getA方法");
		return this.a;
	}
}


Set_Function 类

import java.lang.reflect.Method;

public class Set_Function {
	public static void main(String[] args) throws Exception,
			IllegalAccessException {
		Class<?> k = Class.forName("Reflect_Setter");
		Object kObject = k.newInstance();
		Method kmthod = k.getMethod("getA"); // 如果方法名错误,会抛出NoSuchMethodException异常
		int obj = (int) kmthod.invoke(kObject);
		System.out.println("通过反射创建Reflect_Setter类实例,并通过反射调用实例的getA方法,得到的A的值为"
				+ obj);
	}
}






你可能感兴趣的:(java,反射)