小编and*_*enu的帖子

多个嵌套通配符 - 参数不适用

我大大简化了我的问题.这是它的读法.

我试图弄清楚为什么以下代码无法编译:

 List<AnonType<AnonType<?>>> l = new ArrayList<AnonType<AnonType<?>>>();
 l.add( new AnonType<AnonType<String>>() );
Run Code Online (Sandbox Code Playgroud)

哪里

public class AnonType<T> {
  T a;

  List<T> b;
}
Run Code Online (Sandbox Code Playgroud)

编译器错误表示add不适用于给定的参数.OTOH,以下代码只有1级嵌套通配符完美编译:

List<AnonType<?>> l = new ArrayList<AnonType<?>>();
l.add( new AnonType<String>() );
Run Code Online (Sandbox Code Playgroud)

java generics compiler-errors wildcard

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

标签 统计

compiler-errors ×1

generics ×1

java ×1

wildcard ×1