反射(泛型的擦除)

实用价值低,仅仅是用来测试反射的掌握

上代码

Array<Sring> arr = new Array<String>();
//这个arr只能用来存储String
//若是直接用反射,则可以存储任意对象
Class c = arr.getClass();
Method method = c.get("add",Object);//由于add()方法本来的参数是泛型 但是class文件里面并没有泛型,所以便是Object
//调用成员方法时候需要有一个依附的对象
Object obj = c.newInstance();
method.invoke(obj,1);
method.invoke(obj,"aaa");
这样的话便除去了泛型的限制,但是若是遍历的话就很难

猜你喜欢

转载自blog.csdn.net/salted_fish_master/article/details/80296340