java 反射机制调用函数

java反射机制 Refelction 反射映象倒影  即是 动态获取类有哪些属性和方法

在java里面

我们可以用反射机制在程序运行时 加载 探知 使用 编译期间完全未知的class 不包括方法定义

package month9;

import java.lang.reflect.Method;

public class InvokeTester {
	public int add(int a,int b){
		return a+b;
	}
	public String echo(String name){
		return name;
	}
	
	public static void main(String[] args) throws Exception{
		Class classType = InvokeTester.class;                                       //获取需要反射操作的对象
		Object invokeTester = classType.newInstance();                                 //运用newInstance()来生成这个新获取方法的实例
		Method addMethod = classType.getMethod("add",new Class[]{int.class,int.class});//获取你想要调用哪个方法
		Object result = addMethod.invoke(invokeTester,new Object[]{1,2});              //传递参数
		System.out.println((Integer)result);                                           //把Object对象强制转换为Integer值
		System.out.println("----------------------");                                  //华丽的分隔线
		Method echoMethod = classType.getMethod("echo",new Class[]{String.class});
		Object result2 = echoMethod.invoke(invokeTester, new Object[]{"tom"});
		System.out.println((String)result2);
	}
}
运行截图

java 反射机制调用函数_第1张图片

你可能感兴趣的:(java)