当前位置: 代码迷 >> Java相关 >> [求助]泛型类别的问题
  详细解决方案

[求助]泛型类别的问题

热度:100   发布时间:2006-09-09 22:12:39.0
[求助]泛型类别的问题

小弟对Java的泛型类别感到很混乱,请问以下两行代码有何不同?
第一行错在哪里?
谢啦...

List <String> [] lsa = new List<String>[10] //错误
List <Integer> intList = new ArrayList<Integer>() //正确

搜索更多相关的解决方案: 泛型  类别  

----------------解决方案--------------------------------------------------------

你的错误不是你泛型声明的错误,而是你构造对象错误
List这个类,是一个接口,不是一个类,是不能用new去构造对象的
而ArrayList是一个实现了List接口的类,它是可以用new去构造的,当然也可以把这个对象的引用赋给List


----------------解决方案--------------------------------------------------------

怎么又跑出个接口出来啦...
那样说Set和Map都是接口吧...
可以说下接口和类的差别吗?


----------------解决方案--------------------------------------------------------

还有一个问题,请问这个定义:
class C<T extends Comparable<? super T> & Serializable>

其中Comparable是个可被实作的介面应该是Java的保留字.为何可以充当类的名称来继承别的类?


----------------解决方案--------------------------------------------------------
搂主应该先去API 上 搜索 下的..

Comparable 哪里是什么保留字呀。.是个接口, 在java.lang包下

<T extends Comparable> 是限制泛型的范围, 即只能是实现 Comparable 接口的类

在泛型中不用 implements 实现接口, 而用 extends, 因为这样 更贴切,形象,
----------------解决方案--------------------------------------------------------
  相关解决方案