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>();没毛病,结合上面两句总结的语法规律,这样写没毛病,是正确的。
例如:
//可以
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>();没毛病,结合上面两句总结的语法规律,这样写没毛病,是正确的。
相关文章推荐
- JAVA基础复习(三)泛型的使用
- java实际开发中泛型使用需要注意的一些问题
- 黑马程序员_Java语言_集合框架(一些使用案例及泛型)
- 声明方法java实际开发中泛型使用需要注意的一些问题
- java实际开发中泛型使用需要注意的一些问题
- JAVA 泛型的使用场景一
- Java--泛型的原理以及使用场景
- Java学习笔记之使用反射+泛型构建通用DAO
- Java的this关键字使用(无笔记、待复习)
- 整理Java的MyBatis框架中一些重要的功能及基本使用示例
- JavaSE复习之一 基础知识:Java的基础语法
- 关于使用java中的一些规范
- 初试java:java与c++的一些语法区别
- java 使用var 快捷语法
- Java使用反射来获取成员变量泛型信息
- Java基础:泛型类型的子类及通配符的使用
- java中的泛型的一些常见例子
- Java基础之泛型——使用通配符类型参数(TryWildCard)
- 安卓快速入门系列1(通过插件使用java8的语法)
- javaWeb开发之MySQL和Cookie的使用练习中遇到的一些问题及解决