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) 编辑 收藏 举报