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

java再复习——泛型使用语法上的一些坑

2017-03-01 12:09 246 查看
一些使用泛型过程中的语法的坑

例如:

//可以
List list = new ArrayList();
//原类型指向泛型参数类型OK
List list2 = new ArrayList<String>();
//泛型参数类型指向原类型也可以
List<String> list3 = new ArrayList();

这样写都是允许的。
下面是不允许的情况:

List<String> list = new ArrayList<Object>();

List<Object> list2 = new ArrayList<String>();

总结一下:
参数化类型与原始类型是可以互相兼容的,例子一。

参数化类型不考虑继承关系,例子2(后面有专门通配符的使用来表示参数化类型的继承关系)。

那么这样正确吗?

List list = new ArrayList<Object>();

list = new ArrayList<String>();没毛病,结合上面两句总结的语法规律,这样写没毛病,是正确的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: