首页 > 解决方案 > Java无界通配符误区

问题描述

假设我定义了一组参数化类型,如下所示:

Deque<Node<Integer>> nodes = new LinkedList<>();

nodes.add(new Node(5));

为什么将该引用传递给签名中具有无界通配符的方法是错误的,如下所示:

static void printNodes(Collection<Node<?>> nodes) {...} 

标签: javagenericsunbounded-wildcard

解决方案


推荐阅读