相关疑难解决方法(0)

Java中的泛型

我今天遇到了一些奇怪的事情.看一下这段代码:

List <Rectangle> test1 = new LinkedList<Rectangle>();
List <Shape> test2 = test1; //Compiler Error;
Run Code Online (Sandbox Code Playgroud)

这当然是假设Rectangle类是Shape的子类.有人可以向我解释为什么这是一个错误?

java generics

2
推荐指数
1
解决办法
709
查看次数

Java泛型参数和继承

我们知道ViewGroup扩展了View.
此外,我们有一个通用的参数化class A<T extends View>

问题:
为什么方法不C.add()接受new A<ViewGroup>()参数?
由于多态性,它不应该工作吗?

类图

解决方案: Singning add with ? extends Viewlet添加accept new A<ViewGroup>()作为参数.

解

java generics polymorphism inheritance

1
推荐指数
1
解决办法
2536
查看次数

标签 统计

generics ×2

java ×2

inheritance ×1

polymorphism ×1