您的位置:首页 > 编程语言 > Java开发

java 泛型通配符 直接源码

2013-10-09 19:17 190 查看
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类的
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: