java中关于参数化类型

"参数化类型就是一个编译器可以自动定制作用于特定类型上的类。"请问这句话怎么理解?... "参数化类型就是一个编译器可以自动定制作用于特定类型上的类。"请问这句话怎么理解? 展开
 我来答
帐号已注销
推荐于2017-09-11 · TA获得超过292个赞
知道答主
回答量:10
采纳率:0%
帮助的人:17.7万
展开全部
List list = new ArrayList();
这是未引入参数化类型时的写法,list集合中可以存储不同类型的元素,如此便有了安全隐患,编译器不能保证你取值时的转型(拆箱)一定正确。

jdk1.5引入了参数化类型(泛型)之后,写法变为。
List<类型(例如String)> list = new ArrayList<String>();
这样的话,list中只能存储String类型的元素,编译器在编译时便会验证list中的元素是否全为String类型,否则编译错误。如此一来便不存在安全隐患,读取数据时也不需要自己进行拆箱,编译器会判断其元素类型为String.

参数化类型就是一个编译器可以自动定制作用于特定类型上的类,简单的说就是,原本集合中用来处理的通用类型为Object,而使用了参数化类型后,编译器会自动的将Object参数的类型修改为你传递给它的参数化类型,例如此例运行时内存中list类中的Object属性,全被替换为String的。

关于泛型这块,还有不懂的地方你可以问我。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式