我新的仿制药和这里的通用方法是我的问题:调用子类从Java中
public class Tree<T> {
public Collection<Tree<T>> getSubTrees(){};
public Tree<T> getTree(T element){}
}
public class DataTree extends Tree<Data>{
public void someMethod(){
DataTree dataTree = this.getTree(root) ;// type mismatch
Collection<DataTree> leafs = this.getSubTrees(); //type mismatch
//following works
Tree<Data> dataTree = this.getTree(root);
Collection<Tree<Data>> leafs = this.getSubTrees();
}
}
你能告诉我为什么我得到这样的错误或如何正确地投树<数据>到的Datatree到调用DataTree的具体方法?
的传统方法解决这个问题,顺便说一下,是添加一个额外的通用参数来'Tree':像'树>',然后有孩子是类型的' T'。然后你可以通过说'class DataTree extends Tree “来”结合结“。 –