黑马程序员技术交流社区
标题:
可以把List<String>传递给一个接收List<Object>参数的方法吗?为什么?
[打印本页]
作者:
一笑為紅顏
时间:
2015-10-30 23:57
标题:
可以把List<String>传递给一个接收List<Object>参数的方法吗?为什么?
大神在哪里??
作者:
260744042
时间:
2015-10-31 14:03
Eclipse说不行!你这是不合法的!
作者:
maxwell247
时间:
2015-10-31 18:02
这个是不行的. 这样不属于多态. 泛型从某种程度上来说违反了多态的原理, 但是 泛型使用了 泛型上下限实现了多态的补偿.
作者:
大自然的搬运工
时间:
2015-10-31 18:29
泛型是确定元素的类型,所以,一旦确定不能传入其他类型。
作者:
War3cdota
时间:
2015-11-2 10:19
List<String> list1 = new ArrayList<>();
List<Object> list2 = new ArrayList<>();
list2 = list1;//error
List<String> list3 = new ArrayList<>();
List<? extends Object> list4 = new ArrayList<>();
list4 = list3;//ok
按照你这个问题,要使用<? extends Object>的方式。list4可以接受所有继承Object类的类型。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2