Java泛型問題:類“不在類型變量的范圍內”錯誤。
在MySearchTree的K基本類型為Course。因此K必須“擴展” Comparable<Keyable<Course>> &Keyable<Course>。但是,它沒有擴展Comparable<Keyable<DataElement>> &Keyable<DataElement>。
我猜 應該以類似的方式對泛型 或 。
public interface Keyable <T> {public String getKey();}public interface DataElement<THIS extends DataElement<THIS>> extends Comparable<Keyable<THIS>>, Keyable<THIS>, Serializable {...}public class Course implements DataElement<Course> {...}public interface SearchTree<K extends Comparable<Keyable<K>> & Keyable<K>> extends Serializable {...}public class MySearchTree implements SearchTree<Course> {解決方法
我正在為一個涉及泛型的類項目。
public interface Keyable <T> {public String getKey();}public interface DataElement extends Comparable<Keyable<DataElement>>,Keyable<DataElement>,Serializable {...}public class Course implements DataElement {...}public interface SearchTree<K extends Comparable<Keyable<K>> & Keyable<K>> extends Serializable {...}public class MySearchTree implements SearchTree<Course> {... private class Node {public Course data;public Node left;public Node right;... }}
當嘗試在MySearchTree的聲明中使用Course類時,我收到一個類型自變量錯誤,指出“課程不在類型變量K的范圍內”。我花了很多時間試圖弄清楚Course可能缺少哪些屬性,以使其不符合要求,但卻空洞了。
有任何想法嗎?
相關文章:
1. mysql優化 - mysql count(id)查詢速度如何優化?2. mysql主從 - 請教下mysql 主動-被動模式的雙主配置 和 主從配置在應用上有什么區別?3. angular.js - angularjs 用ng-reapt渲染的dom 怎么獲取上面的屬性4. 主從備份 - 跪求mysql 高可用主從方案5. css3 - [CSS] 動畫效果 3D翻轉bug6. node.js - node_moduls太多了7. angular.js - Angular路由和express路由的組合使用問題8. python如何不改動文件的情況下修改文件的 修改日期9. python - django 里自定義的 login 方法,如何使用 login_required()10. angular.js - 不適用其他構建工具,怎么搭建angular1項目
![css3 - [CSS] 動畫效果 3D翻轉bug](http://www.aoyou183.cn/attached/image/news/202304/110831f073.png)