Java 反射

//获取类的类型

Class classType = TestService.class;

//实例化类
Object instance = classType.newInstance();

//获取类的所有方法
Method[] classMethods=classType.getMethods();

//执行类的第一个方法,invoke方法第一个参数为方法的类,后面的参数为当前方法(classMethods[0])的参数,如多参数那么继续添加参数,

//invoke方法的最后一个参数为...类型是可添加,也可不添加,也可添加多条参数,详情了解String.format(String format, Object ... args)

//objRes为方法的返回值,如没有返回值,则为null

Object objRes= classMethods[0].invoke(instance, new String("-----"));

//输出返回值

System.out.println(objRes);

 

//同上

Class classType = TestService.class;

//同上
Object instance = classType.newInstance();

//单个获取单个方法,getMethod方法的第一个参数为方法名,后面的参数为"save"方法的参数,该参数也是...类型的
Method testMethod = classType.getMethod("save", new Class[] { Object.class});

//执行方法同上面
Object objRes=testMethod.invoke(instance, new String("-----"));

//输出参数

System.out.println(objRes);

 

posted on 2015-12-04 10:19  Yangguang.Liu  阅读(115)  评论(0编辑  收藏  举报