現象:list加入了泛型Integer,規定隻能添加Integer類型的值,想添加别的類型的會報錯
越過泛型檢查
@Test
public void skipGenric(){
List<Integer> list = new ArrayList<>();
list.add(123);
//擷取Class對象
Class clazz=list.getClass();
try {
//擷取add方法,參數類型設定為Object
Method method = clazz.getMethod("add", Object.class);
//調用方法
method.invoke(list,"sss");
System.out.println(list);
} catch (Exception e) {
e.printStackTrace();
}
}
結果展示