java 泛型通配符 直接源码

来源:互联网 发布:英国商业数据分析硕士 编辑:程序博客网 时间:2024/06/03 20:54
package fanxing;import java.util.ArrayList;import java.util.List;public class tongpei {public static void main(String args[]){hehe1 x=new hehe1();hehe2 y=new hehe2();ArrayList<String> list=new ArrayList<String>();//x.paint1(l);  你以为List<String>是List<Object>的子类么  ,,你错了,,,哈哈  ,,怎么使用呢  通配符吧可以匹配任何类型y.paint1(list);}}class hehe1{public void paint(List c)//没有泛型声明就会引起警告{}public void paint1(List<Object>l){}}class hehe2{public void paint1(List<?>l)//使用通配符可以匹配任何类型的{//l.add(new Object()); 可是不能加入元素这个是为什么啊   引起编译错误/* * 因为都类型参数说明实际上但是一个问题就是  我不知道他是什么类型的  实际上表示是有类型参数要求的 *怎么办    不能加入  唯一能加入的就是null了  呵呵他才是通用的呢 *///但是却可以返回   原来不论如何他都是object类的}}

原创粉丝点击