我想要做这样的事情:在多个类中使用相同的通配符类型
public class Tree<A extends Ability>{
...
}
在树中我要使用从能力继承的对象。该树由节点,有作为有效载荷的能力:如果我尝试使用在树的方法
public class Node<A extends Ability>{
public A getAbility(){ ... }
...
}
,说搜索,我得到一个错误:
public void read(){
Node node = searchForTheNode(...);
node.getAbility(); // <- this gives me an error
}
的错误说,不兼容的类型:java.lang.Object和A. 我错过了什么,如何在树和节点中使用相同的泛型类型?
不幸的是,这是行不通的。错误是:“不能访问'package.Tree'中的'A'” – thalador 2011-05-18 17:46:48
好吧,如果内部类不是静态的,似乎工作! – thalador 2011-05-18 17:47:49