黑马程序员-------Java笔记--------怎么越过泛型检查
2015-08-23 12:51
423 查看
———-android培训、java培训、java学习型技术博客、期待与您交流!——-
往ArrayList<Integer>里面添加string;
方法1:通过反射
****************************************
方法2:泛型也是有范围的
往ArrayList<Integer>里面添加string;
方法1:通过反射
package demo; import java.lang.reflect.Method; import java.util.ArrayList; //往ArrayList<Integer>的集合中添加String类型。 /** * 通过反射来思考:(越过泛型的检查) * 1.获取list对象的class文件对象 * 2.通过class文件对象获取方法对象 * 3.通过方法对象添加任意类型的元素 * @author Administrator * */ public class Demo24 { public static void main(String[] args) throws Exception { ArrayList<Integer> list = new ArrayList<Integer>(); //获取list字节码文件对象 Class c=list.getClass(); //通过文件对象获取方法对象(带参的,任意类型) Method m=c.getMethod("add",Object.class); //通过文件对象添加字符串; m.invoke(list, "hello"); System.out.println(list); } }
****************************************
方法2:泛型也是有范围的
package test2; import java.util.ArrayList; /** * 往ArrayList<Integer>的集合中添加String类型。 * 思路:泛型也是有范围的 * @author Administrator * */ public class FanXing { public static void main(String[] args) { ArrayList<Integer> list = new ArrayList<Integer>(); list.add(42); //list.add("hello"); getStr(list); } private static void getStr(ArrayList list) { list.add("hello"); } }
相关文章推荐
- 【剑指offer】面试题39:深度二叉树
- 黑马程序员----集合框架的的基本操作
- iOS单例模式(面试必考)
- 黑马程序员-------Java笔记--------分数基本运算
- 黑马程序员----Java集合框架学习笔记2 Map-工具类-泛型
- 珍藏文:花10钟看一看少走30年弯路
- 黑马程序员——JAVA基础之面向对象(下)
- 程序员一生必读的书
- 幽默趣味:程序员如同妓女
- 黑马程序员-------Java笔记--------完数与质数
- 剑指Offer面试题:8.斐波那契数列
- 黑马程序员----Java集合框架学习笔记1-List 与Set
- 初入职场感悟
- 黑马程序员--OC之内存管理
- 黑马程序员-[OC]学习之旅-ARC机制和类别
- 我的职业规划(android)
- Android(java)学习笔记188:关于构造代码块,构造函数的一道面试题(华为面试题)
- 一个合格的程序员应该读过哪些书
- 黑马程序员-----Java基础-----IO流-1
- 黑马程序员-[OC]学习之旅-(构造与内存管理)