关于泛型的问题~~~~

qq_30626327 2016-05-08 04:16:35
为什么说 ArrayList 是List的子类 但不等于说ArrayList <Integer> 是List<Integer>的子类 ?
...全文
299 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
鬼狐柒 2016-05-13
  • 打赏
  • 举报
回复
乔不思 2016-05-09
  • 打赏
  • 举报
回复
为什么说 ArrayList 是List的子类 但不等于说ArrayList <Integer> 是List<Integer>的子类 ? ArrayList <Integer> 是List<Integer>的子类!可以这么理解的。 java中泛型的用途只是为了指定类型,供编译使用,当然也可以优化代码接口,简化代码书写方式。 java中的泛型其实已经偏离了泛型 的概念了,个人感觉。
迷林 2016-05-09
  • 打赏
  • 举报
回复
你这问题问的我好迷茫  不知道怎么给你解答
chaser401 2016-05-09
  • 打赏
  • 举报
回复
规定了参数类型就不再是原来的类了
狮子悬山 2016-05-09
  • 打赏
  • 举报
回复
这个ArrayList是泛型后就限制了存入的数据,应该类型就和List不一样了吧 讲道理这个问题没得任何意义
zhang_0716 2016-05-09
  • 打赏
  • 举报
回复
List<Integer>这个是多态,本质还是创建的他的实现类的对象,比如ArratList<Integer>对象的多态
  • 打赏
  • 举报
回复
这个,我还真不知道
  • 打赏
  • 举报
回复
泛型提高了代码的安全性和可读性。 比如向ArrayList放入一个Integer,取出的时候必须强制类型转换Integer i = (Integer)arraylist.get(0); ArrayList<integer>就告诉大家要放的就是integer类型,其他的类型放不了,取出来的就是Integer。 泛型对extends和implements没有影响,只是限定了类型,ArrayList <Integer> 就是一个实现了List<Integer>接口的类。 要注意的是类 B extends A,但ArrayList<B>并不是一个ArrayList<A>
家里敷泥呀 2016-05-09
  • 打赏
  • 举报
回复
“ArrayList 是List的子类 但不等于说ArrayList <Integer> 是List<Integer>的子类” 这句话本身就有待商榷。敢问此语句出处? 个人认为,你也可以说“ArrayList <Integer> 是List<Integer>的子类”,只是我们一般不那么说。 就好比,我们会说“孔鲤是孔子的儿子”,但不会说“穿长袖的孔鲤是穿长袖孔子的儿子”。 父子类关系,在java诞生之初就有的(jdk1.0),泛型是 jdk5.0 以后添加的某一属性。 表达父子类关系也是无关此属性的。(好比上面的例子,血缘关系和衣着无关)
HerveyHall 2016-05-09
  • 打赏
  • 举报
回复
这个问题提得好,进来学习下
李大白白 2016-05-08
  • 打赏
  • 举报
回复
因为ArrayList继承了List啊, 你这是什么问题啊
qq_30745165 2016-05-08
  • 打赏
  • 举报
回复
这是两个概念吧 没什么关系吧 好吧 我承认我不知道。。。 只是想顶个贴

62,625

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧