invoke_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > invoke

invoke

 2014/8/15 18:35:00  船长过桥人  程序员俱乐部  我要评论(0)
  • 摘要:/****/packagetest8_15;importjava.lang.reflect.InvocationTargetException;importjava.lang.reflect.Method;/****SimpletoIntroduction*@ProjectName:[测试]*@Package:[test8_15.testInvoke.java]*@ClassName:[testInvoke]*@Description:[测试反射机制]*@Author
  • 标签:
class="java">/**
 * 
 */
package test8_15;

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

/**   
 *  
 * Simple to Introduction  
 * @ProjectName:  [测试] 
 * @Package:      [test8_15.testInvoke.java]  
 * @ClassName:    [testInvoke]   
 * @Description:  [测试反射机制]   
 * @Author:       [孟宪光]   
 * @CreateDate:   [2014-8-15 下午3:43:18]   
 * @UpdateUser:   [mengxianguang]   
 * @UpdateDate:   [2014-8-15 下午3:43:18]   
 * @UpdateRemark: [说明本次修改内容]  
 * @Version:      [v1.0] 
 *    
 */
public class testInvoke {
	public static void main(String[] args) throws IllegalArgumentException, IllegalAccessException, InvocationTargetException, InstantiationException, SecurityException, NoSuchMethodException {
		Class clazz;//定义一个类
		Object obj=null;//定义一个对象
		try {
			 clazz = Class.forName("java.util.HashSet");//根据类名获得一个类
			 obj=clazz.newInstance();//实例化一个对象
			 Method[]methods=clazz.getMethods();//得到类的所有方法
			for(Method method:methods){
				System.out.println(method.getName());//输出所有的方法名
			}
			//现在想用该类中的一个方法例如add(前提是之前的方法中已经有)
			//定义一个方法对象
			Method method=clazz.getMethod("add", Object.class);
			//使用该方法,通过定义的method
			method.invoke(obj, "a");
			method.invoke(obj, "b");
			method.invoke(obj, "c");
			//现在输出对象中增加的值
			System.out.println(obj);
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		 
	}
}

  • 相关文章
发表评论
用户名: 匿名