我新的仿製藥和這裏的通用方法是我的問題:調用子類從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 「來」結合結「。 –