A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 赵永康 中级黑马   /  2012-9-18 22:07  /  1271 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

张老师在将泛型的时候,说参数化类型不存在继承关系
即:ArrayList<Object>  arraylist=new ArrayList<String>;Object是String的父类,所以是错误的
在看看?通配符的运用:ArrayList<? extends Number> arraylist=new ArrayList<Integer>;这个是可以的!!
本人的疑惑就是在上述的左边即<? extends Number> 假如表示的是Long 此时就相当于ArrayList<Long> arraylist=new ArrayList<Integer>;这个可以通过吗??
再看看ArrayList<? super Integerr> arraylist=new ArrayList<Number>;假如左面<? extends  Integer> 传入的是Object,此时的就相当于
ArrayList<Object> arraylist=new ArrayList<Number>;这样能成立吗??
不知道我的理解错在哪里了 求解??

2 个回复

倒序浏览
吕书凯 发表于 2012-9-18 22:27
ArrayList

上述代码是张老师视频里面的??他说是正确的 我就是理解不了了啊
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马