泛型只在编译时有效,运行时无效
package generic;
import java.lang.reflect.Method;
import java.util.ArrayList;
//●泛型:编译时有效,运行时无效
public class TestGeneric01 {
public static void main(String[] args) throws Exception{
ArrayList<String> list=new ArrayList<>();
list.add("A");
list.add("B");
list.add("Hello World");
//list.add(200);
//●←基于反射技术,将数值型200写入list集合中
//1)获取类对象
Class<?> cls = list.getClass(); //获取list的具体类型
//2)获取类中的方法对象
Method m = cls.getDeclaredMethod("add", Object.class); //获取类中的add方法,参数类型为Object类型
//3.执行方法对象
m.invoke(list, 200);
m.invoke(list, true);
System.out.println(list);
}
}