反射-通過反射越過泛型檢查
package cn.itcast.test;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.ArrayList;
/*
* 我給你ArrayList<Integer>的一個物件,我想在這個集合中新增一個字串資料,如何實現呢?
*/
public class ArrayListDemo {
public static void main(String[] args) throws NoSuchMethodException,
SecurityException, IllegalAccessException,
IllegalArgumentException, InvocationTargetException {
// 建立集合物件
ArrayList<Integer> array = new ArrayList<Integer>();
// array.add("hello");add不進去
// array.add(10);//自動裝箱,Integer.ValueOf(10);
Class c = array.getClass(); // 集合ArrayList的class檔案物件
Method m = c.getMethod("add", Object.class);
m.invoke(array, "hello"); // 呼叫array的add方法,傳入的值是hello
m.invoke(array, "world");
m.invoke(array, "java");
System.out.println(array);
}
}
相關文章
- 通過反射認識泛型的本質反射泛型
- C# 透過反射(Reflection)呼叫不同名泛型方法C#反射泛型
- 反射-通過反射執行配置檔案內容反射
- Java反射—方法的反射、深入瞭解泛型Java反射泛型
- 反射-通過反射獲取私有構造方法並使用反射構造方法
- 反射-通過反射獲取成員變數並使用反射變數
- 反射-通過反射獲取無參構造方法並使用反射構造方法
- 反射-通過反射獲取帶參構造方法並使用反射構造方法
- C# 通過反射建立例項C#反射
- 【Java反射】Java 泛型基礎Java反射泛型
- 【譯】9. Java反射——泛型Java反射泛型
- 通過反射獲取窗體例項反射
- ViewPager(通過反射修改viewpager切換速度)Viewpager反射
- Java自定義Annotation,通過反射解析AnnotationJava反射
- 通過Java反射動態獲取資訊Java反射
- Java反射給泛型集合賦值Java反射泛型賦值
- DataTable轉換list泛型集合(反射)泛型反射
- 通過反射獲取私有內部類物件反射物件
- Go中泛型和反射比較指南Go泛型反射
- 如何用反射呼叫泛型類的方法反射泛型
- [轉載] python通過反射執行程式碼Python反射行程
- Java進階 | 泛型機制與反射原理Java泛型反射
- JDBC泛型類反射封裝結果集JDBC泛型反射封裝
- 8.集合、泛型、列舉、註解、反射泛型反射
- java對過反射呼叫方法Java反射
- 反射的妙用:C#通過反射動態生成型別繼承介面並實現反射C#型別繼承
- 全域性修改預設字型,通過反射也能做到反射
- Java——通過反射獲取函式引數名稱Java反射函式
- PHP通過反射實現物件的成員方法呼叫PHP反射物件
- Go Internals: Go 反射 vs Java 泛型 vs cpp 模板Go反射Java泛型
- 透過ASM 反射實現IOCASM反射
- golang通過反射設定結構體欄位的值Golang反射結構體
- 集合框架-通過Object轉型問題引入泛型框架Object泛型
- C#通過反射獲取類中的方法和引數個數,反射呼叫方法帶引數C#反射
- 簡單介紹如何通過註解獲取反射的值反射
- Go 通過反射的reflect設定實際變數的值Go反射變數
- 反射-通過反射寫一個通用的設定某個物件的某個屬性為指定的值反射物件
- PHP通過反射來得到類,以及一些基本的應用PHP反射