![]() |
1
23
原因是test.class属于类型class<test>。不能将类型class<test>的引用分配给类型class<t>的变量,因为它们不是同一回事。然而,这是有效的:
通配符允许将类<t>和类<test>引用分配给testtype。
有大量关于Java泛型行为的信息。
Angelika Langer Java Generics FAQ
. 我将根据使用
考虑以下方法:
这将允许成功编译以下语句:
但以下内容无法编译:
现在考虑这些陈述:
第二行未能编译并产生此错误
很容易理解为什么第二行不能在这里编译。无法分配的实例
规则是不能将实例分配给实例类型的子类变量,因为不能保证该变量是兼容的。
仿制药的行为方式相似。在泛型方法签名中,
通配符增加了额外的灵活性,因为下面将编译:
自从
|
![]() |
2
4
假设我扩展测试:
现在,当我调用
声明变量
|
![]() |
3
1
去掉条件,错误就更好了…
|
|
user29759326 · 如何返回递归函数中的最后一个值? 6 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 6 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 6 月前 |
![]() |
rudraraj · java中未声明最终变量 6 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 6 月前 |