package Day32_Reflection;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.ArrayList;
/**
* @Author quzheng
* @Date 2019/10/7 23:36
* @Version 1.0
*
* 定义集合类,泛型String
* 要求向集合中添加Integer类型 没有实际使用价值
*
* 反射 直接获取出集合的class 文件对象
* 再调用 add() 方法
*/
public class ReflectTest {
public static void main(String[] args) throws NoSuchMethodException, InvocationTargetException, IllegalAccessException {
ArrayList<String> arr = new ArrayList<String>();
arr.add("a");
Class c = arr.getClass();
Method m1 = c.getMethod("add",Object.class);
System.out.println(m1);
m1.invoke(arr,15);
m1.invoke(arr,150);
m1.invoke(arr,1500);
System.out.println(arr);
}
}
网友评论